Я только что проверил проблему, которую вы описали, добавив keyListener в JTextField и напечатав возвращаемое значение метода getText () на консоль.
Что я обнаружил, так это то, что он всегда на один символ позади, если вы хотите использовать метод getText () прямо в событии keyTyped или keyPressed (я этого не знал, потому что я обычно просто использую кнопку, чтобы подтвердить, что я '' м закончил ввод текста и привязал KeyEvent к клавише Return, чтобы вызвать кнопку, если пользователь хочет подтвердить, нажав ввод)
Я думаю, это связано с тем, что textField обновляет свое текстовое значение ПОСЛЕ события снимается.
Полагаю, это то, что вы сделали, поскольку вы не предоставили пример кода, поэтому я удалю этот ответ, если это не так.
Чтобы обойти это, нужно реализовать то, что вы хотите сделать в методе keyReleased.
public void keyReleased(Event e)
{
System.out.println(myTextField.getText());
}