アプリ版:「スタンプのみでお礼する」機能のリリースについて

行いたい事
エクリプスで、clone&キャスト時に、表示される警告文を消すコーディング方法

ソース
Class Hoge {
private HashMap<String,Hogex> hoge = new HashMap<String,Hogex>();

public HashMap<String,Hogex> getCloneHoge(){
return (HashMap<String,Hogex>)hoge.clone();
}
}

getCloneHoge()の
return (Map<String,Hogex>)hoge.clone();
のコードに、
型の安全性: Object から HashMap<String,Hogex> へのキャストは、実際には消去された型 HashMap に対してチェックを行います。
という警告文が表示されます。

@SuppressWarnings("unchecked")
をつければ、警告は消えますが、コード自体を修正して対応する方法は、無いのでしょうか?

よろしくお願いいたします。

A 回答 (1件)

Eclipse使ったことないんで自信ないけど,


以下のスレによると
http://forum.java.sun.com/thread.jspa?threadID=5 …

//return (HashMap<String,Hogex>)hoge.clone();
return new HashMap<String,Hogex>(hoge);

cloneメソッドを使うのではなく,コピーコンストラクタを使うことで対処する,ということのようです
    • good
    • 0
この回答へのお礼

//return (HashMap<String,Hogex>)hoge.clone();
return new HashMap<String,Hogex>(hoge);

cloneをどうにかしようばかり考えていた為、
教えていただいた方法を、全く思いつきませんでした。

無事、対応できました。

スレまで教えていただきありがとうございました。

お礼日時:2008/03/12 13:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!