概要 MahoutはいろんなものをlongのIDで扱う。ので、文字列をIDに変換しないといけないシーンにけっこう出くわす。 手軽にIDと文字列を変換できる機能に、IDMigratorがある。ファイルとかDBから文字列とIDの対応表を生成してくれる機能。 変換にはハッシュ値を使用し、衝突したら仕方ないという男らしい仕様を採用している。JavaDocには「最悪、違うユーザのレコメン出しちゃうこともあるかもね」と書かれている。 でも、大丈夫。64bitでぶつかってしまうような運命の2人なら、きっと趣味も一緒のはずだから。 MemoryIDMigrator とりあえず手軽に使えるところで、MemoryIDMigratorを使ってみる。Collectionに入った文字列からIDへの変換表を生成してくれる。 List<String> list = Arrays.asList( "田中", "佐藤",