2017-10-19 9 views
-4

stürzt ab, wenn ich es laufen lasse, es ist ein Palindrom-Tester (wenn ein Wort das gleiche Wort vorwärts und rückwärts buchstabiert) und ich möchte, dass alle Nicht-Wort-Zeichen und Kleinbuchstaben werden. Kann jemand das Problem erkennen? oder gib ein paar Tipps? Ich versuche zu vermeiden, mit "versuchen" "für" Sachen etc .. nur während und wenn Aussagen für ein Projekt. hier ist meine Ausgabe:Java-Programm stürzt ab

eine mögliche Palindrom eingeben: p.oop hier ist es: Exception in thread "main" java.lang.StringIndexOutOfBoundsException Poop: String-Index außerhalb des Bereichs: 4 bei java.lang. String.charAt (Unknown Source) bei Driver.main (Driver.java:27)

import java.util.*; 


public class Driver 
{ 

    public static void main(String[] args) 
    { 

    String str, another = "y"; 
    int left, right; 

    Scanner scan = new Scanner(System.in); 

    while (another.equals("y")) 
    { 
     System.out.println("Enter a possible palindrome : "); 
     str = scan.nextLine(); 
     String palindromToLowerCase = str.toLowerCase(); 
     String finalPalindrom = palindromToLowerCase.replaceAll("\\W", ""); 
     left = 0; 
     right = str.length() - 1; 

System.out.println("here it is : " + finalPalindrom); 

     while (finalPalindrom.charAt(left) == finalPalindrom.charAt(right) && left < right) 
     { 
      str.toLowerCase(); 
      left++; 
      right--;   
     } 
     System.out.println(); 

     if (left < right) 
     { 

     System.out.println("that string is NOT a palindrom"); 
     } 

     else 
     { 
     System.out.println("This string IS a palindrom"); 
     } 

    } 


    } 

} 
+0

Was meinst du mit Absturz? Wird eine Ausnahme ausgelöst? – Logan

+0

My exeption geworfen: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String-Index außerhalb des Bereichs: 4 \t bei java.lang.String.charAt (Unknown Source) \t bei Driver.main (Driver.java : 27) – Peder

Antwort

0

Änderung:

right = str.length() - 1; 

zu:

right = finalPalindrom.length() - 1; 
+0

oh mein Gott wie habe ich das vermisst .. vielen Dank Freund! – Peder

+0

Gern geschehen. Habe ein gutes Studium. – Doleron