Überprüfen ob String Array leer ist

Hallo1234

Bekanntes Mitglied
Hallo, das ist die Aufgabe:

For every good kata idea there seem to be quite a few bad ones!
In this kata you need to check the provided array (x) for good ideas 'good' and bad ideas 'bad'. If there are one or two good ideas, return 'Publish!', if there are more than 2 return 'I smell a series!'. If there are no good ideas, as is often the case, return 'Fail!'.

Das ist mein Code dazu:
Java:
            String[] x = {};

            int count0 = 0;

            String r = "";

            for(int i=0; i<x.length; i++){
                if(x[i].equals("good")){
                    count0++;

                }if(count0 <= 2 && count0 != 0) {
                    r = "Publish!";
                }else if(count0 > 2) {
                    r = "I smell a series!";
                }else if(count0 == 0 || x.length <= 0) {
                    r = "Fail!";
                }
            }
            //System.out.println(count0);
            return r;

Es funktioniert in Eclipse, aber nicht bei Codewars. Meine Vermutung ist, dass auch auf ein leeres Array überprüft wird, weshalb ich beim letzten else if noch das "...|| x.length <=0" hinzugefügt habe. Dadurch ist das Problem leider noch nicht gelöst. So sieht der Error aus:
1628168928450.png
Ich weiß jetzt wirklich nicht mehr, woran es liegen könnte. Vielleicht kann mir da jemand aushelfen.
Vielen Dank
 

Robertop

Bekanntes Mitglied
Ich bin jetzt nicht ganz sicher, was dieser fehlschlagende Test macht, aber das Problem ist ja offensichtlich, dass ein leerer String anstatt "Fail!" ausgegeben wird.
Das bedeutet, dass keine deiner If Abfragen zutrifft und einfach das leere r vom Anfang zurückgegeben wird. Vielleicht ist hier schon die Lösung, dass du r Standardmäßig oben auf "Fail" setzt und die ganze zusätzliche Abfrage für das Fail weg lässt. Dann kann es zumindest nicht mehr passieren, dass ein leerer String rauskommt.

PS: Ich hatte mir nach der letzten Frage hier zu Codewars mal die Seite angesehen. Man kann sich bei den Übungen auch die Testklasse ansehen. Zur not kann man da dann ja genau sehen, was der Test macht und warum er dann fehlschlägt.

PPS: Bei genauerer Betrachtung deines Codes ist mir noch aufgefallen, dass dein x.length <=0 am Ende keinen Effekt hat, weil die For-Schleife ja gar nicht erst betreten wird, wenn die Länge = 0 ist.
 

JensXF

Mitglied
Versuchs mal mit einer zusätzlichen if-Anweisung if (x.length != 0) vor der for-Schleife und r = "Fail!"; danach.

Edit: Hab gerade gemerkt das dass so nicht klappt, weil dann als letztes der String immer auf Fail gesetzt wird.
 
Zuletzt bearbeitet:

Hallo1234

Bekanntes Mitglied
Ich bin jetzt nicht ganz sicher, was dieser fehlschlagende Test macht, aber das Problem ist ja offensichtlich, dass ein leerer String anstatt "Fail!" ausgegeben wird.
Das bedeutet, dass keine deiner If Abfragen zutrifft und einfach das leere r vom Anfang zurückgegeben wird. Vielleicht ist hier schon die Lösung, dass du r Standardmäßig oben auf "Fail" setzt und die ganze zusätzliche Abfrage für das Fail weg lässt. Dann kann es zumindest nicht mehr passieren, dass ein leerer String rauskommt.

PS: Ich hatte mir nach der letzten Frage hier zu Codewars mal die Seite angesehen. Man kann sich bei den Übungen auch die Testklasse ansehen. Zur not kann man da dann ja genau sehen, was der Test macht und warum er dann fehlschlägt.

PPS: Bei genauerer Betrachtung deines Codes ist mir noch aufgefallen, dass dein x.length <=0 am Ende keinen Effekt hat, weil die For-Schleife ja gar nicht erst betreten wird, wenn die Länge = 0 ist.
Habe r zu "Fail!" geändert. Jetzt klappt es auch bei Codewars. Danke für deine Hilfe : )
Ja die Testklasse ist in vielen Fällen hilfreich, nur hier gab es kein Beispiel mit leerem Array, aber es funktioniert jetzt zum Glück.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Überprüfen ob Leerzeile im String[][] array Java Basics - Anfänger-Themen 2
J Überprüfen ob String eine Zahl ist Java Basics - Anfänger-Themen 2
G String Elemente auf Zahlen Überprüfen Java Basics - Anfänger-Themen 21
P Überprüfen, ob String Zeichenfolge enthält Java Basics - Anfänger-Themen 4
berserkerdq2 Überprüfen ob eine Schreibberechtigung auf ein file exisitert bzw. ob man dieses file löschen kann, wie? Java Basics - Anfänger-Themen 9
J Überprüfen ob ein Fenster offen ist? Java Basics - Anfänger-Themen 8
Naxon89 Threads Android AysncTask => Überprüfen, ob ein Ergebniss schon vorliegt Java Basics - Anfänger-Themen 5
C Überprüfen eines Programms auf Syntaxfehler Java Basics - Anfänger-Themen 3
CptK Überprüfen ob übergebenes Objekt zu Generics passt Java Basics - Anfänger-Themen 2
G Überprüfen ob alle Ziffern von 1-9 in einem Integer vorhanden sind Java Basics - Anfänger-Themen 6
A Überprüfen, ober eine Zahl Ziffer enthält Java Basics - Anfänger-Themen 12
C Überprüfen eines Queltextes auf Syntax-Fehler und Laufzeitfehler Java Basics - Anfänger-Themen 2
K Überprüfen ob Eingabe ein Float ist Java Basics - Anfänger-Themen 4
P Überprüfen ob Mausklick auf Linie ist? Java Basics - Anfänger-Themen 6
J Überprüfen, ob eine 2D Matrix ein Baum ist Java Basics - Anfänger-Themen 5
J Methoden Überprüfen ob Objekt bereits erstellt wurde Java Basics - Anfänger-Themen 2
T Überprüfen, ob Objekt gelöscht wurde Java Basics - Anfänger-Themen 1
O Überprüfen ob eine Methode ausgeführt wurde Java Basics - Anfänger-Themen 10
C Überprüfen auf Palindrom Java Basics - Anfänger-Themen 12
B Überprüfen von Strings schlägt fehl Java Basics - Anfänger-Themen 5
S Arbeiten mit einer CSV Datei und Überprüfen von einem Datum in einem Textfeldern Java Basics - Anfänger-Themen 4
C Überprüfen, ob Timer läuft Java Basics - Anfänger-Themen 3
C Problem mit Überprüfen einer Eingabe Java Basics - Anfänger-Themen 5
S Überprüfen auf Permutation Java Basics - Anfänger-Themen 4
K Überprüfen ob Datei vorhanden Java Basics - Anfänger-Themen 2
G Überprüfen ob einen Array einen Value enthält Java Basics - Anfänger-Themen 13
T Überprüfen, ob Array Elemente hat Java Basics - Anfänger-Themen 22
I Überprüfen eines Passwortes Java Basics - Anfänger-Themen 5
N Überprüfen ob ein Label angeklickt wurde Java Basics - Anfänger-Themen 3
P Methode zum Überprüfen ob Datei verwendet wird? Java Basics - Anfänger-Themen 3
G Überprüfen wann ein Dokument abläuft? Java Basics - Anfänger-Themen 3
C Überprüfen, ob die eingabe auch buchstaben enthält Java Basics - Anfänger-Themen 6
G Überprüfen ob es ein Link existiert Java Basics - Anfänger-Themen 3
S Überprüfen, ob Tabelle existiert Java Basics - Anfänger-Themen 5
M Überprüfen ob die eingaben in einem JTextField eine Zahl ist Java Basics - Anfänger-Themen 5
H Überprüfen ob Request mit enctype=multipart/form-data Java Basics - Anfänger-Themen 2
krgewb String mit Datumsangabe in Long umwandeln Java Basics - Anfänger-Themen 2
D String Groß/Kleinschreibung Ignorieren Java Basics - Anfänger-Themen 4
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
J Ähnlichen String in Liste finden Java Basics - Anfänger-Themen 6
Kartoffel_1 String transformation Java Basics - Anfänger-Themen 7
H String-Operation replace() - Zeichenkette verdoppeln Java Basics - Anfänger-Themen 2
K String analysieren Java Basics - Anfänger-Themen 27
Beowend String zu Date parsen Java Basics - Anfänger-Themen 1
Beowend String auf Satzzeichen überprüfen? Java Basics - Anfänger-Themen 6
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
String in ArrayList umwandeln Java Basics - Anfänger-Themen 1
I Sass Compiler und String erhalten? Java Basics - Anfänger-Themen 7
Avalon String in Double bzw. Währung konvertieren Java Basics - Anfänger-Themen 6
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
F Arraylist<String>Ein Wort pro Zeile Java Basics - Anfänger-Themen 6
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
N String überprüfen Java Basics - Anfänger-Themen 3
E String zerlegen aus args Java Basics - Anfänger-Themen 1
M Long-Typ in String-Änderung führt zu keinem Ergebnis bei großer Zahl Java Basics - Anfänger-Themen 11
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
J String Filter Java Basics - Anfänger-Themen 5
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2
D 2D Char Array into String Java Basics - Anfänger-Themen 2
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
I Zerlegen von String Java Basics - Anfänger-Themen 3
B Beliebiger String gegeben Suche Datum in String Java Basics - Anfänger-Themen 6
I String Java Basics - Anfänger-Themen 4
I API - zurückgegebener JSON String lesen und in Entity konvertieren Java Basics - Anfänger-Themen 2
H Zu langen String aufteilen - bequeme Methode? Java Basics - Anfänger-Themen 14
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
M Kommandozeilenparamter als EINEN String werten Java Basics - Anfänger-Themen 5
M RandomAccessFile int und String gleichzeitig in einer Datei Java Basics - Anfänger-Themen 49
M Prüfen on eine Zahl im String enthalten ist Java Basics - Anfänger-Themen 3
Distanz zwischen zwei Zeichenfolgen in einem String bestimmen Java Basics - Anfänger-Themen 5
Substring in einem String finden Java Basics - Anfänger-Themen 13
BeginnerJava String mit vorgegebener Länge und Buchstaben erzeugen/ mit Leerstellen Java Basics - Anfänger-Themen 8
I Eindeutiger String mit maximaler Anzahl an Zeichen Java Basics - Anfänger-Themen 11
H Interface Wieso "List<String> list = new ArrayList<>[…]" Java Basics - Anfänger-Themen 4
JavaBeginner22 Integer in String umwandeln Java Basics - Anfänger-Themen 7
HolyFUT JSON String in Java Object schreiben - Anführungszeichen rauskriegen? Java Basics - Anfänger-Themen 17
Fodoboo131 RegEx- Umwandlung von String in ausführbares Objekt/ Befehl Java Basics - Anfänger-Themen 9
HolyFUT Input/Output Leerzeichen aus String entfernen - klappt nicht! Java Basics - Anfänger-Themen 13
viktor1 Methoden Methode schreiben static void readText (String filename) {...} zu WordHistogramSample.java Java Basics - Anfänger-Themen 13
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
G Position einer unbekannten 3-stelligen-Zahl in einem String finden Java Basics - Anfänger-Themen 15
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
X Datentypen String.equals funktioniert nicht Java Basics - Anfänger-Themen 5
Alen123 String wiederholen mit Schleifen Java Basics - Anfänger-Themen 1
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
T String splitten Java Basics - Anfänger-Themen 3
sserio Schwimmen als Spiel. Problem mit to String/ generate a card Java Basics - Anfänger-Themen 4
J Datentypen String in File konvertieren funktioniert nicht Java Basics - Anfänger-Themen 4
T Platzhalter in String? Java Basics - Anfänger-Themen 14
M String mit Variable vergleichen Java Basics - Anfänger-Themen 9
I String Kombination erstellen anhand fortlaufender Zahl (Vertragsnummer) Java Basics - Anfänger-Themen 13
Fats Waller Compiler-Fehler Kann ich einen String und die Summe zweier Char Werte mittels der println Anweisung ausgeben Java Basics - Anfänger-Themen 4
M Wie kann eine Methode (string) eine andere Methode (void) mit zufälligen int-Werten aufrufen? Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben