別にこのコードを見てStringBuilder使えと言われた訳ではないんですが、
何かの時にたった一回文字列に変更加えるだけなのにと思ったことがありました。

ファイルの名前を一度に変更するプログラムです。

String l;
int i = 1;
while ((l = inputStream.readLine()) != null) {
   l = l.replace('!', '!');
   l = l.replace('?', '?');
   l = "×× 第" + String.format("%03d", i++) + "話「" + l + "」.avi";
   array.add(l);

テキストファイルに変更後のファイル名一覧を作って、
それを読み込んでArrayListに格納する場面です。
半角の?がファイル名に使えないので!と合わせて全角にしています。