Ich schreibe gerade eine for-Schleife, um durch ein 2D mit 38 Elementen zu gehen. Einige dieser Elemente sind jedoch null und ich möchte, dass die for-Schleife sie einfach überspringt (weil ich in dem Puzzle, das ich löse, keine Bewegungen mit ihnen verbunden sind). Eine schnelle Suche ergab, dass ich eine Iteration mit einer einfachen continue
Anweisung in einer if
Anweisung zu Beginn der for
Schleife überspringen kann. Allerdings möchte ich mehrere Iterationen überspringen, und die if-Anweisung Ich schrieb nicht funktioniert:Überspringen bestimmter Iterationen einer for-Schleife
for (int i = 0; i < triplets.length; i++) {
if (i == 18 || 19 || 25 || 26 || 28 || 29 || 31 || 32) {
continue;
}
Gibt es eine Alternative zu machen 8 individuelle if
Aussagen oder bin ich damit nicht weiter?
Sie können eine Bedingung nicht logisch verketten, der '|| 'Operator erfordert, dass Sie es auf jeder Seite einen boolean übergeben, zB' i == 18 || i == 19 || ... ' – azurefrog
Sie haben gesagt, dass die Elemente null sind. Warum können Sie nicht testen, ob das Element null ist, anstatt zu versuchen, die spezifischen zu überspringenden Bewegungen anzugeben? Was andere Alternativen betrifft, können Sie 'if (i == 18 || i == 19 ...)' machen. Ich würde in eine Liste laden und nach der Anwesenheit in der Liste suchen. Wie ich sehe @Cootri tat das unten, als ich tippte ... – KevinO
Ich bin mir nicht sicher, warum ich wegen der Frage nach einer einfachen Frage abgelehnt werde, aber hey, das ist die pedantische Überlauf-Community für dich. Es scheint, es war ein einfacher Syntaxfehler. Vielen Dank für Ihre Hilfe @azurefrog –