Почему все таки выбросило NullPointerException и при этом вывод и валидацию прошло при таком решении if(in.isEmpty()){ break; }else { Cat cat = CatFactory.getCatByKey(in); System.out.println(cat.toString()); } Может кто объяснить?