Java:Object型から総称型(ListやMapなど)へキャストする方法

Object型から総称型(ListやMapなど)へキャストする場合、Java 5.0以降では以下の様に記述すると「型の安全性: Object から Map への未検査キャスト」 とコンパイラが警告を表示してきます。

単純に警告を表示させないだけで良いのならメソッドの手前に「@SuppressWarnings(“unchecked”)」を記載すれば良いのですが、それではメソッド内全てで本来チェックが必要な箇所までチェックされなくなってしまうのであまり好ましい方法とは言えません。個人的に一番良いと思われる方法はObject型をキャストする専用メソッドを作成し、その中でのみObject型からListやMapなどの総称型へキャストする方法です。

Javaソース

    • 総称(Generics)を使用することで、呼出元の期待値に合わせてキャストされます。

JUnitサンプル

コメントを残す

メールアドレスが公開されることはありません。

email confirm*

post date*