Ho un array booleano le cui dimensioni dipendono dalla dimensione di una stringa selezionata casualmente.Come controllare TUTTI gli elementi di un array booleano sono veri
così ho qualcosa di simile:
boolean[] foundLetterArray = new boolean[selectedWord.length()];
Dato che il programma va avanti, questa particolare matrice booleana si riempie di valori veri per ogni elemento della matrice. Voglio solo stampare una dichiarazione non appena tutti gli elementi dell'array sono veri. Così ho provato:
if(foundLetterArray[selectedWord.length()]==true){
System.out.println("You have reached the end");
}
Questo mi dà un errore di eccezione fuori dai limiti. Ho anche provato il metodo ma questo termina il ciclo anche se 1 elemento nella matrice è vero. Ho bisogno di un ciclo for che iterates attraverso tutti gli elementi della matrice? Come posso impostare una condizione di test in questo?
Gli indici di matrice iniziano da 0, quindi l'ultimo elemento è 'foundLetterArray [selectedWord.length() - 1]'. Anche '== true' è un po 'ridondante; non è necessario confrontare un valore di verità con un altro, ma è possibile utilizzarlo direttamente come condizione. – kiheru
È necessario un ciclo per verificare se tutti gli elementi sono 'true'. Nel ciclo puoi fermarti quando incontri il primo elemento 'false'. – cyon
Ciao ragazzi. Questo risolve il problema fuori limite, ma questa istruzione if presuppone che l'intero array sia vero se solo l'ultimo elemento è vero. Qualche idea su come aggirare questo? Per esempio se tutti gli elementi sono falsi e l'ultimo elemento è vero, si dice "Hai raggiunto la fine". È vero? o ho fatto qualcosa di sbagliato di nuovo? – Daybreak