public class MissingLetters { public String getMissingLetters(String sentence) { boolean occurances[] = new boolean[26]; for(int i = 0; i < sentence.length(); i++) { int c = (int)sentence.charAt(i); if(c >= 'A' && c <= 'Z') occurances[c-'A'] = true; else if(c >= ('A'+32) && c <= ('Z'+32)) occurances[c-'A'-32] = true; } StringBuilder missing = new StringBuilder(); for(int i = 0; i < occurances.length; i++) if(!occurances[i]) missing.append((char)(i+'A'+32)); return missing.toString(); } public static void main(String s[]) { MissingLetters ml = new MissingLetters(); System.out.println(ml.getMissingLetters("A quick brown fox jumps over the lazy dog")); System.out.println(ml.getMissingLetters("A slow yellow fox crawls under the proactive dog")); System.out.println(ml.getMissingLetters("Lions, and tigers, and bears, oh my!")); System.out.println(ml.getMissingLetters("")); } }