私は2つの同様の方法を持っています。そのうちの 1 つは何かを印刷し、そのうちの 1 つは何かを保存します。ご覧のとおり、多くの重複コードがあります。リファクタリングしてこの重複を削除するにはどうすればよいですか?
public static void printSomething(List<String> list) {
for (String item : list) {
if (item.contains("aaa")) {
System.out.println("aaa" + item);
}
if (item.contains("bbb")) {
System.out.println("bbb" + item);
} else {
System.out.println(item);
}
}
}
public static Map<String, String> getSomething(List<String> list) {
Map<String, String> map = new HashMap<String, String>();
for (String item : list) {
if (item.contains("aaa")) {
map.put("aaa", item);
}
if (item.contains("bbb")) {
map.put("bbb", item);
} else {
//do nothing
}
}
return map;
}
アップデート:
メソッドが完全に類似していない場合の問題を解決するためにコードが更新されました