型付きのオブジェクトから型付きのオブジェクトにコードをリファクタリングしたいと考えています。リスト内のオブジェクトの型に基づいてメソッドの戻り値の型を変更する
たとえば、ここに私の現在のコードは次のとおりです。
public class TestClass {
ArrayList list = new ArrayList();
public ArrayList testMethodA() {
list.add("string1");
list.add("string2");
list.add("string3");
list.add("string4");
list.add("string5");
return list;
}
}
私はそれが
public class TestClass {
List<String> list = new ArrayList<>();
public ArrayList<String> testMethodA() {
list.add("string1");
list.add("string2");
list.add("string3");
list.add("string4");
list.add("string5");
return list;
}
}
になるように、型指定されたリストの中に、これを有効にすることから、戻り値の型を変更する方法はありますArrayList
~ArrayList<Object>
のタイプに基づいて、obj1
,obj2
、...]?たとえば、リストに追加される内容がString
の場合は、ArrayList
からArrayList<String>
への戻り値を動的に変更できますか?
私はEclipseを使用していますので、これを行うのに役立つプラグイン(またはスクリプトなど)があれば、それは非常に感謝しています。
これを行う「自動」な方法がない場合は、5-6日の手動による修正が必要になります。これはむしろ回避します。
3つの事:http://help.eclipse.org/kepler/index.jsp?topic=/org.eclipse.jdt.doc.user/reference/ref-menu-refactor.htm
はまた、この前のstackoverflowの質問を参照してください。 1常に*のインタフェースを記述します。 *常にジェネリック*を使用してください。 3.他のメソッドから直接アクセスできる場合は、 'list'を返す必要はありません。 – TheLostMind
ありがとうございます。私のケースでは、各クラスを調べて、何が追加されているかを確認して手動で変更することで戻り値の型を変更する必要がある巨大なコードベースを持っています。私はこのことを手動でやりたくないので、利用可能な***プラグインを使用しようとしています***または以下のタスクを達成するスクリプトを書いてください。 – Srikar
@Srikar実際にはあなたの質問では言いませんが、タイプされていないオブジェクトから型付きオブジェクトにコードをリファクタリングしていますか?あなたが望むようなコードを持っていて、実行時にタイプされていない型を変更したいという質問から、 – Chewtoy