ちょっと仕事でJavaでの半角全角変換など実装してみた。案外楽だった。 JavaはStringインスタンスの時点でUTF-16文字列となっていることがかなり有利に働く。少なくともJavaではそこまで文字変換を怖がる必要はないっぽい。 文字変換の実装には下記のパターンを思いついた。 単純に特定範囲にオフセットを足せばよいもの(全角英数字・一部記号 ⇔ 半角英数字・一部記号、ひらがな ⇔ カタカナ変換) char[]のテーブルを作成しておいて、それを参照するもの。(半角カナ ⇒ 全角カナ変換) 2文字から1文字に集約するもの(半角濁音カナ ⇒ 全角濁音カナ, 例としてはガ ⇒ ガ。) 巨大なswitch文で対処しなければならないもの。(1対1対応している変換ではかなり使いやすい) 巨大なswitch文とはこういうもののことをいう: // char c; switch (c){ case '\

