Я полагаю, у вас здесь происходит пара вещей.
Во-первых, я думаю, что вы не хотите делать свои операторы else до тех пор, пока после вы не пройдете цикл. Как написано в данный момент, он прекратит работу, как только ваш первый оператор 'if' потерпит неудачу из-за характера вашего вызова if / else и вызова System.exit (0).
System.out.println("Please enter an American word: ");
word = input.nextLine();
for (int i = 0; i < america.length; i++)
{
for(int j = 0; j < british.length; j++)
{
if (word.equals(america[i]))
{
System.out.println(america[i] + " in british is: " + british[j]);
System.exit(0);
}
}
}
System.out.println("Word not found in the dictionary.");
System.exit(0);
Однако вам на самом деле не нужен второй цикл, поскольку у вас есть индекс, который вы нашли при выполнении итерации первого цикла, так что вы можете еще больше упростить свой ответ.
System.out.println("Please enter an American word: ");
word = input.nextLine();
for (int i = 0; i < america.length; i++)
{
if (word.equals(america[i]))
{
System.out.println(america[i] + " in british is: " + british[i]);
System.exit(0);
}
}
System.out.println("Word not found in the dictionary.");
System.exit(0);
Поскольку значения отображаются с помощью индекса, вы можете получить прямой доступ к тому, что хотите перевести, без второго цикла, что делает вашу программу быстрее и менее сложной!