Der Ausgang ist 1 1 1 1 1 1
weil die erste for
Anweisung über ein Array ist Looping, genannt list
, von Werten (dh {1, 2, 3, 4, 5, 6}
) und jeder mit dem vorherigen Austausch des 2. beginnend (Index 1
; oder , wie manche vielleicht sagen, der erste, wo der "echte" erste der 0. ist ... ich schweife ab). Somit wird der aktuelle Wert des Artikels 2 (Index 1
) (2
) durch den Wert des ersten Artikels (Index 0
) ersetzt, der 1
lautet: (list[i] = list[i - 1];
: i = 1
). Dies geht weiter bis zum Ende von list
. Wenn wir jeden Wert durch den vorherigen ersetzen, werden sie schließlich alle zum selben Wert - der des ersten Elements im Array, nämlich 1
. Am Ende haben wir diesen Wert für unsere list
: {1, 1, 1, 1, 1, 1}
.
Die nächste for
Anweisung druckt einfach jeden Wert des aktualisierten list
nacheinander gefolgt von einem Leerzeichen: System.out.print(list[i] + " ");
. Wie Sie sehen können, ist das Ergebnis dieses Codes, dass es 1 1 1 1 1 1
ausgibt.
einfach den Punkt nach Hause in einer visuellen Art und Weise zu fahren, lassen Sie sich nur die Werte des im Laufe der Zeit list
Array kartieren:
int i = 1; // i = 1
list[i] = list[i - 1]; // list[1] = list[1 - 1]; list[0] == 1
// list is now {1, 1, 3, 4, 5, 6}
i++; // i = i + 1 # i is now 2
list[i] = list[i - 1]; // list[2] = list[2 - 1]; list[1] == 1
// list is now {1, 1, 1, 4, 5, 6}
i++; // i = i + 1; i = 3
list[i] = list[i - 1]; // list[3] = list[3 - 1]; list[2] == 1
// list is now {1, 1, 1, 1, 5, 6}
i++; // i = i + 1; i = 4
list[i] = list[i - 1]; // list[4] = list[4 - 1]; list[3] == 1
// list is now {1, 1, 1, 1, 1, 6}
i++; // i = i + 1; i = 5
list[i] = list[i - 1]; // list[5] = list[5 - 1]; list[4] == 1
// list is now {1, 1, 1, 1, 1, 1}
i++; // i = i + 1; i = 6
i < list.length; // i == 6; list.length == 6; 6 < 6 == false
// exit the for loop
Ich hoffe sicher, dass helfen Sie, die Konzepte im Spiel verstehen hier ein wenig besser. Viel Glück beim Rest deines Tests!
Was ist Ihr Verständnis davon, was dieser Code tut? – Maljam
Seine Werte in einem Array speichern? Ich bin ein Anfänger zum Codieren, das war eine der Fragen, die ich in meinem Test fand. –
Versuchen Sie es auf Papier zu verfolgen. Es beginnt bei Element eins, das 2 enthält, und setzt das Element gleich i - 1, das 1 zum Starten enthält. Und so weiter. – Logan