В Java массив должен иметь фиксированный размер, и вы не можете изменить его после объявления. Что касается вашей проблемы, вы можете создать массив, размер которого больше, чем вы ожидаете. Поскольку вы не знаете, сколько он будет зацикливать, вы можете сделать цикл while и маркер для прекращения ввода («выход» или «остановка» или что-то еще, что не может ввести специальный пользователь ...). Например:
String[] arr = new String[1000];
Scanner scanner = new Scanner(System.in);
int counter = 0;
while (true) {
String input = scanner.nextLine();
if ("stop".equalsIgnoreCase(input)) {
break;
}
arr[counter++] = input;
}