Что не так в строке if (ch[i] == ' ') Character.toUpperCase(ch[i+1]); Вроде бы, всё логично...