Я могу что-то упустить, но кажется, что ваш код противоречит сам себе. Вы читаете пользовательский ввод, а затем проверяете, равно ли оно х и в этом случае ломается l oop. Если это не так, вы продолжаете до оператора while, где x снова проверяется на то же условие. Таким образом, в итоге вы нарушаете l oop для того же условия, которое у вас есть для его запуска.
Возможно, вы захотите попробовать изменить ваше условие в операторе while на
while (!name.equals("x"))