Wie die Rückgabe eines Wertes innerhalb einer Schleife in einer return Methode?

Habe ich Schwierigkeiten zurückgeben eines Wertes aus einer Schleife in der Methode.

Habe ich versucht, auf diese Weise: (die gibt classname meine initialisieren String statt classes.get(i).className)

public String getClassName(){
    String cName = "classname";
    for (int i=0; i<classes.size(); i++){
        cName = classes.get(i).className;
    }
return cName;
}    

und ich habe versucht, dies so gut: (gibt c statt classes.get(i).className)

public String getClassName(){
    String cName = "classname";
    String c = "c";
    for (int i=0; i<classes.size(); i++){
        c = classes.get(i).className;
    }
    cName = c;
    return cName;
}    

Bitte sagen Sie mir, wie man zurück classes.get(i).className!! Vielen Dank 😛

Basierend auf dem, was Sie tun müssen, geben den Wert zurück?! Da in Ihrem Fall der Letzte Wert aus der Liste Klassen wird immer zurückgegeben.
Bedeutet es, dass mein code hat kein problem, aber es gibt tatsächlich nichts in der ArrayList gespeichert, so gibt es die initialsed Wert?
Ja und Nein. Syntaktisch, Ihr code korrekt ist und ob Daten in der Liste, die Sie bekommen würde, einen anderen Ausgang(nicht die className die Sie standardmäßig eingestellt). Aber logisch, es ist nicht so, es wird immer das Letzte element aus der Liste, und ich bezweifle wirklich, wenn Sie das wollen, denn wenn das der Fall ist, return classes.get(classes.size() - 1).className; sollte ausreichen. Sie müssen nicht einmal die Liste Durchlaufen.
Danke. aber wenn die ArrayList classes hat 0 Elemente zunächst, fürchte ich, dass mitreturn classes.get(classes.size() - 1).className würde die java.lang.ArrayIndexOutOfBoundsException: -1 Fehler
Sie würde, könnte Sie eine null/leer überprüfen Sie, vor der Rücksendung. So einfach ist das. Auch, da es ein Liste, erhalten Sie die IndexOutOfBoundsException.

InformationsquelleAutor Sue | 2013-10-27

Schreibe einen Kommentar