質問です。
ArrayListで、新規に追加する要素が
既にリスト内にある場合は追加しない、というようなメソッドはありませんか?

やはり毎回リスト内を全てチェックするしか方法はありませんかね。