我正在研究一個簡單的程序,以確定用戶的輸入是否在預定義的8個字符的數組中。如果是,那麼它應該打印出該字母及其位置。如果不是,應該說它不存在。我如何控制我的循環
問題是它通過數組查找並找到字符,然後轉到else並打印出「由於for循環它不知道」7個剩餘位置的位置。我在紙上追溯變量和條件,雖然我有點理解問題出現的原因,但我不知道如何解決。
到目前爲止,我已經試過打破循環,創建一個布爾值,如果找到字符並將信息打印出來,它將會改變(仍然是它的問題,並打印7次,它找不到它)。
char search;
char tryAgain='Y';
char arrayChar[]= {'a', 'd', 'g', 'h', 'r', 't', 'u', 'y'};
while(tryAgain == 'Y')//while user enters Y
{
System.out.println("\nEnter a character to check if it is present in the array");
search= input.nextLine().charAt(0);//extract first letter
for(int i = 0; i < arrayChar.length; i++)//looks through
{
if(search == arrayChar[i])//if it is found
System.out.println(search + " was found in the " + i +" position\n");//print that it is
else
System.out.println("Cannot find the character");
}
System.out.println("Would you like to try again? Yes/No?");
tryAgain= input.nextLine().charAt(0);
}//while try again
System.out.println("Thank you come again");