Vier Augen sehen mehr...

Diskutiere Vier Augen sehen mehr... im Java Basics - Anfänger-Themen Bereich.
H

HarriG

Guten Abend zusammen,

mein Palindrom will nicht wie ich will und ich sehe nicht was ich in diesem Code- Abschnitt falsch mache. Bzw. weiß ich nicht wie ich die erste for-Schleife ändern muss, damit ich keinen outOfBounce zurück bekomme.

Code:
public static void main(String[] args){

        String string = "Ab!b.a";
        String upTo = string.toUpperCase();     // given string becomes capital
        char[] seaWord = upTo.toCharArray();    // creates an array from capital string
        int count = 0;                          // counts the valid letters
        int count2 = 0;
        boolean result = false;

        //testarea
        System.out.println(upTo);
        System.out.println(seaWord);
        //System.out.println(count);
        //System.out.println(count2);
        //

        for (int i = 0; i < upTo.length(); i++) {
            if (seaWord[i] >= 'A' && seaWord[i] <= 'Z') {
                count++;
                System.out.print(seaWord[i]);

            }
        }
Compiler sagt:
AB!B.A
AB!B.A
ABBAException in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 4 out of bounds for length 4
at testa.main(testa.java:41)
Gruß
 
6

687b46c0da97

Der code den du hier reinkopiert hast, erzeugt folgenden Output:
Code:
AB!B.A
AB!B.A
ABBA
Process finished with exit code 0
Kann es sein Das du eine alte Version ausführst (Kein automatischer Build?). Ansonsten kopiere bitte einmal den Code aus Zeile 41 hier rein, nachdem es nicht danach aussieht, dass der hier aufgeührte Code snippet das Problem ist.
 
A

abc66

mein Palindrom will nicht wie ich will und ich sehe nicht was ich in diesem Code- Abschnitt falsch mache. Bzw. weiß ich nicht wie ich die erste for-Schleife ändern muss, damit ich keinen outOfBounce zurück bekomme
Meine Frage wäre, was genau soll der Code bewerkstelligen?
 
H

HarriG

Code:
public static void main(String[] args){

        String string = "Ab!b.a";
        String upTo = string.toUpperCase();     // given string becomes capital
        char[] seaWord = upTo.toCharArray();    // creates an array from capital string
        int count = 0;                          // counts the valid letters
        int count2 = 0;
        boolean result = false;

      
//testarea
System.out.println(upTo);
System.out.println(seaWord);
System.out.println(count);
System.out.println(count2);
//


        for (int i = 0; i < upTo.length(); i++) {
            if (seaWord[i] >= 'A' && seaWord[i] <= 'Z') {
                count++;
                System.out.print(seaWord[i]);

            }
        }
AB!B.A
AB!B.A
0 <--------------------------------------- er rechnet count nicht hoch
0
ABBA
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 4 out of bounds for length 4
at testa.main(testa.java:41)
ich weiß nicht warum count nicht hochgezählt wird
 
Zuletzt bearbeitet:
H

HarriG

0 <--------------------------------------- er rechnet count nicht hoch
0

ich habe diese zwei Werte vor dem posten hier im Forum entfernt, weil ich dachte dass sie nicht von Bedeutung wären. ^^!
 
6

687b46c0da97

Hallo,
das liegt daran, dass den count vor der schleife ausgibst - und nicht danach. Aktuell ist trotzdem die Vermutung, dass der hier geteilte Code, nicht der Code ist welcher die Probleme bereitet.

Bitte füge hier einmal den kompletten Code ein und markiere ggf. die Zeile 41.
 
Thema: 

Vier Augen sehen mehr...

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben