Tôi có một mảng boolean có kích thước phụ thuộc vào kích thước của một chuỗi được chọn ngẫu nhiên.Cách kiểm tra TẤT CẢ các phần tử của một mảng boolean là đúng
Vì vậy, tôi có một cái gì đó như thế này:
boolean[] foundLetterArray = new boolean[selectedWord.length()];
Khi chương trình đang diễn ra, mảng boolean đặc biệt này được lấp đầy với các giá trị đích thực cho mỗi phần tử trong mảng. Tôi chỉ muốn in một tuyên bố ngay sau khi tất cả các phần tử của mảng là đúng. Vì vậy, tôi đã thử:
if(foundLetterArray[selectedWord.length()]==true){
System.out.println("You have reached the end");
}
Điều này mang lại cho tôi một lỗi ngoài ngoại lệ. Tôi cũng đã thử phương pháp nhưng kết thúc vòng lặp ngay cả khi 1 phần tử trong mảng là đúng. Tôi có cần một vòng lặp for lặp đi lặp lại qua tất cả các phần tử của mảng không? Làm thế nào tôi có thể thiết lập một điều kiện thử nghiệm trong đó?
Chỉ số mảng bắt đầu bằng 0, do đó phần tử cuối cùng là 'foundLetterArray [selectedWord.length() - 1]'. Ngoài ra '== true' là một chút dư thừa; bạn không cần phải so sánh giá trị chân lý với giá trị khác, nhưng có thể sử dụng nó trực tiếp làm điều kiện. – kiheru
Bạn cần một vòng lặp để kiểm tra xem tất cả các phần tử là 'true'. Trong vòng lặp, bạn có thể dừng lại khi bạn gặp phải phần tử 'false' đầu tiên. – cyon
Chúc mừng các bạn. Điều này giải quyết vấn đề bị ràng buộc, nhưng câu lệnh if này giả định toàn bộ mảng là đúng nếu chỉ phần tử cuối cùng là đúng. Bất kỳ ý tưởng về cách để có được xung quanh đó? Ví dụ: nếu tất cả các phần tử là sai và phần tử cuối cùng là đúng, nó nói "Bạn đã đạt đến kết thúc". Điều đó có đúng không? hoặc tôi đã làm điều gì đó sai một lần nữa? – Daybreak