String[] words = message.split(" "); if (words.length > 1) { for (int i = 0; i < words.length; i++) { Word w = new Word(); w.word = words[i]; if (i == 0) { Word x = new Word(); x.word = words[i + 1]; w.after.add(x); } else if (i == words.length - 1) { Word x = new Word(); x.word = words[i - 1]; w.before.add(x); } else { Word b = new Word(), a = new Word(); b.word = words[i - 1]; a.word = words[i + 1]; w.before.add(b); w.after.add(a); } Word pp; while ((pp = findWordByText(w.word)) != null) added.remove(pp); added.add(w);