タイトルのとおり、一部のコードで「チェックされていない、または安全でない操作」の警告の原因を見つけるのに苦労しています。
次のコードがある場合、警告なしでコンパイルされます。
public void test()
{
Set<String> mySet = new HashSet<String>();
Set<String> myNewSet = mySet;
//do stuff
}
ここで、mySetの取得元を変更すると、特にメソッド呼び出しの結果として、「チェックされていないyaddayadda」という警告が表示されます。
public void test()
{
Set<String> myNewSet = this.getSet();
//do stuff
}
public Set getSet()
{
Set<String> set = new HashSet<String>();
return set;
}
私は問題が何であるかを解明しようと試みましたが、私は完全に困惑しています。この問題は、セットを使用するかリストを使用するかに関係なく存在します。getSetメソッドによって返されるSetが、最初の例のSetと異なるのはなぜですか?
警告は世界の終わりではありませんが、それは私を悩ませているので、どんな助けでも大歓迎です!:(
よろしく