gpt4 book ai didi

java - 如何从我的代码中删除重复项

转载 作者:搜寻专家 更新时间:2023-10-30 21:27:35 25 4
gpt4 key购买 nike

我有两个类似的方法。其中一个打印一些东西,其中一个保存一些东西。如您所见,有很多重复代码。我应该如何重构它并删除这种重复?

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;
}

更新:

代码已更新以解决方法不完全相似时的问题

最佳答案

假设 "aaa""bbb"println 出现的顺序无关紧要,您可以替换以下实现printSomething

public static void printSomething(List<String> list) {
Map<String, String> map = getSomething(list);
for(Map.Entry<String, String> entry : map) {
System.out.println(entry.getKey() + entry.getValue());
}
}

关于java - 如何从我的代码中删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16171125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com