У меня есть два похожих метода. Один из них печатает что-то, и один из них спасает что-то. Как вы можете видеть, существует много дублирующего кода. Как мне его реорганизовать и удалить это дублирование?
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;
}
UPDATE:
Код обновлен, чтобы решить проблему, когда метод не совсем похож.