Как я могу попросить пользователя ввести данные несколько раз, пока все совпадающие символы в массиве не будут заменены на 0
Мне нужно написать программу, которая создает массив из 5 символов, случайно заполненных(A-Z), а затем просит пользователя ввести символ с помощью этого
1 java.util.Scanner in = new java.util.Сканер(System.in);
2
3 // . . . .
4
5 char c = in.next().charAt(0);
затем программа должна подсчитать вхождения в заданный массив, распечатать счетчик в консоли и заменить соответствующие символы в заданном массиве на "0". Программа должна завершиться, когда весь массив будет заполнен "0".
Вот что у меня есть на данный момент:
public class New{ public static void main(String[] args){ char arr[] = new char[5]; for(int i=0;i<arr.length;i++){ arr[i] = (char)(Math.random()*((90-65)+1)+65); } for(int i=0;i<arr.length;i++){ System.out.print(arr[i]+ " "); } java.util.Scanner in = new java.util.Scanner(System.in); int counter = 0; char c = in.next().charAt(0); for(int j = 0;j<arr.length;j++){ if(arr[j] == c){ counter++; arr[j]= '0'; } } System.out.println("The character is present " + counter+" times"); for(int j = 0;j<arr.length;j++){ System.out.print(arr[j]+ " "); }
Приведенный выше код запрашивает входные данные, заменяет символ и выводит количество раз, когда этот символ был в массиве. Проблема в том, что мне нужно попросить пользователя ввести данные несколько раз, пока весь массив не будет заполнен нулями.
Что я уже пробовал:
Я попытался поместить char c = in.next().charAt(0); в другой цикл(внешний цикл), и тот, который у меня есть в приведенном выше коде, был внутри этого цикла, он не сработал
Я попытался найти ответ в Google, но не смог найти ничего, что подходило бы в этой ситуации.
Я не могу использовать методы, которые не обсуждались в классе, поэтому должен быть способ поместить char c = in.next().charAt(0); в цикл, чтобы пользователю было предложено ввести данные несколько раз.