java 输出两个数组的不同项

2025-02-24 09:54:03
推荐回答(5个)
回答1:

以下以两个字符数组为例,判断并输出两个字符串数组中的不同元素

public class one {
public static void main(String []args) {
String s1[] = {"wo" , "hai" , "bu" , "shi" , "ai"};
String s2[] = {"bu" , "shi" , "ai" , "guo" , "you" , "love"};

for(int i = 0 ; i < s1.length ; i++) {
for(int j = 0 ; j < s2.length ; j++) {
if(s1[i] == s2[j]) {
s1[i] = s2[j]= null;
break;
}
}
}
System.out.println("字符串数组s1中和数组s2不同的元素有:");
for(int i = 0 ; i < s1.length ; i++) {
if(s1[i] != null) {
System.out.print(" " + s1[i]);
}
}
System.out.println();
System.out.println("字符串数组s2中和数组s1不同的元素有:");
for(int j = 0 ; j < s2.length ; j++) {
if(s2[j] != null) {
System.out.print(" " + s2[j]);
}
}

}
}

回答2:

HashSet set=new HashSet();
for(int i=0;i set.add(a[i]);
set.add(b[i]);
}
for(String s:set){
System.out.println("不同项:"+s);
}

回答3:

import java.util.ArrayList;

public class testCompare {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String a[] = new String[]{"a","a2","b3"};
String b[] = new String[]{"b","b3","a2"};
ArrayList c= new ArrayList();
for(int i=0;i for(int j=0;j if(a[i].equals(b[j])){
c.add(a[i]);
}
}
}
System.out.print("只在A中:");
for(int i=0;i if(!c.contains(a[i])){
System.out.print(a[i]+"");
}
}
System.out.println();
System.out.print("只在B中:");
for(int i=0;i if(!c.contains(b[i])){
System.out.print(b[i]+"");
}
}
}

}

回答4:

两个数组没有一项是相同的!
不知道搞什么。。

回答5:

【代码】:
public void Compare(String[] a,String[] b){
int iLength=a.length;
if(a.length>b.length) iLength=b.length;
//iLength为2个数组中数据量小的数组的长度
for(int i=0;i if(!(a[i].equals(b[i]))){//不同项
Ssytem.out.println("第"+i+"不同"+"a数组的数据为"+a[i]+" b数组的数据为"+b[i]);
}else{//相同项
Ssytem.out.println("第"+i+"项数据相同,数据为"+a[i]);
}
}

}