在java中,当两个数组列表不相同时,如何比较两个相同大小和打印差异的数组列表
我使用了下面的程序2比较两个数组列表,但我不想错过两个数组列表大小相同但内容值不同的条件。下面的代码也可以最小化在java中,当两个数组列表不相同时,如何比较两个相同大小和打印差异的数组列表,java,arrays,arraylist,compare,Java,Arrays,Arraylist,Compare,我使用了下面的程序2比较两个数组列表,但我不想错过两个数组列表大小相同但内容值不同的条件。下面的代码也可以最小化 ArrayList<String> firstList = new ArrayList<String> ( Arrays.asList("Cake", "pizza", "pasta") ); ArrayList<String> secondList = new ArrayList<
ArrayList<String> firstList = new ArrayList<String> ( Arrays.asList("Cake", "pizza", "pasta") );
ArrayList<String> secondList = new ArrayList<String> ( Arrays.asList("Chocolate", "fruits", "pancake"));
if (!firstList.equals(secondList)) {
if (firstList.size() > secondList.size()) {
firstList.removeAll(secondList);
SOP("Differance" + firstList+ "---------Total Number of Group mismatch----------"+ firstList.size());
} else if (firstList.size() < secondList.size()) {
secondList.removeAll(firstList);
SOP("Differance" + secondList+ "---------Total Number of Group mismatch----------" + secondList.size());
}
} else {
SOP("Both are same");
}
ArrayList firstList=新的ArrayList(Arrays.asList(“蛋糕”、“比萨饼”、“意大利面”);
ArrayList secondList=新的ArrayList(Arrays.asList(“巧克力”、“水果”、“煎饼”));
如果(!firstList.equals(secondList)){
if(firstList.size()>secondList.size()){
firstList.removeAll(第二个列表);
SOP(“差异”+firstList+”--------------组不匹配的总数----------“+firstList.size());
}else if(firstList.size()
如果您想使用第三方实用程序,可以直接使用
System.out.println(CollectionUtils.disjunction(firstList, secondList));
要尽量减少简单操作,请使用下面这样的第三个列表
public static void main(String[] args) {
ArrayList<String> firstList = new ArrayList<String> ( Arrays.asList("Cake", "pizza", "pasta", "fruits") );
ArrayList<String> secondList = new ArrayList<String> ( Arrays.asList("Chocolate", "fruits", "pancake"));
List<String> result = new ArrayList<String>();
add(secondList, result);
add(firstList, result);
System.out.println(result);
}
public static void add(ArrayList<String> list, List<String> result) {
for (String string : list) {
if(result.contains(string)) {
result.remove(string);
}else {
result.add(string);
}
}
}
将
else
添加到内部if\else if
。这将处理它们大小相同的情况。@Johnnymapp,但如何在下面打印不同的图片对我很有用。System.out.println(CollectionUtils.disjunction(firstList,secondList
for (String string : firstList) {
if(secondList.contains(string)) {
secondList.remove(string);
}else {
secondList.add(string);
}
}
System.out.println(secondList);