Warum hat Android Studio soll ich verwenden Für Jeden statt der For-Schleife?
Dieser Frage gekämpft hat, mich für die Zeit. Warum wird manchmal Android Studio soll ich verwenden Für Jeden, statt eine For-Schleife, denn wenn ich die For-Schleife, bekomme ich eine Warnung, die ich verwenden könnte für jede (und mit Alt+Enter, es schlägt mir die autofix).
Zum Beispiel nehmen wir an, wir haben diesen code
String a = "";
String[] array = {"A","B","C"};
for(int i = 0; i < array.length; i++) {
a += array[i];
a += ",";
}
Bekomme ich eine Warnung
- und dies ist das Update vorgeschlagen von Android Studio
for (String anArray : array) {
a += anArray;
a += ",";
}
Ist es mehr performant? Es gibt einen Grund, ich sollte bekommen eine Warnung für tatsächlich nur für die Schleife?
Oder wenn es besser for-Schleife, oder für jeden?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aus dem Buch: Effective Java (2nd Edition), Joshua Bloch
Hier ist ein Vergleich von http://developer.android.com/training/articles/perf-tips.html#Loops:
Es ist einfach leichter lesbar, wenn Sie einfach Durchlaufen, ohne sich vor-oder rückwärts. Naja, es ist lesbar, wenn Sie eine gute Variablen-Namen (im Gegensatz zu
anArray
für eineString
:D). Es ist ein bisschen sicherer, auch, weil, wenn Sie waren eine wirklich dumme Programmierer könnten Sie schreibenarray[2 * i]
und werfen einArrayOutOfBoundsException
. Abgesehen davon, finde ich es ein wenig übertrieben zu bitten, Sie zu überarbeiten, dass... dies ist ein gemeinsames idiom in Java.