2个数组 如何判断2个数组中不同的元素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2个数组 如何判断2个数组中不同的元素相关的知识,希望对你有一定的参考价值。

int a[] = 1,2,3,4;
int b[] = 1,3,4,2,5,6;
打印出a在b中没有的元素 5,6
怎么解决?
另 需要判断a中在b中没有的 该如何改呢?

   public static void main(String[] args) 
       String[] arr1 =  "1", "2", "3", "4", "5", "6" ;
       String[] arr2 =  "3", "4", "5" ;
       List<String> list = new ArrayList<String>();
       for (int i = 0; i < arr1.length; i++) 
           int n = 0;// 记录arr2中与arr1相等的元素个数
           for (int j = 0; j < arr2.length; j++) 
               if (arr1[i].equals(arr2[j])) 
                   n++;
               
           
           if (n == 0) // arr2中所有元素与arr1中的第i个元素都不相等,记录该值
               list.add(arr1[i]);
           
       
       for (String s : list) 
           System.out.println(s);
       
   

参考技术A int a[] = 1,2,3,4;
int b[] = 1,3,4,2,5,6;
String aStr = "";
for(int i:a)
aStr+=String.valueOf(i);

for(int i:b)
if(aStr.indexOf(String.valueOf(i))==-1)
System.out.print(i);



当然也可以用双重循环去对比
----
把两个for循环中的a和b颠倒一下顺序...
参考技术B 逐个比较 打印不一样的 参考技术C public static void main(String[] args) throws InterruptedException


int b[] = 1, 3, 4, 2, 5, 6 ;
int a[] = 1, 2, 3, 4 ;
boolean isInclude = false;
for (int i = 0; i < b.length; i++)

for (int j = 0; j < a.length; j++)

if (b[i] == a[j])

isInclude = true;
break;


if (!isInclude)

System.out.println(b[i]);

isInclude = false;

本回答被提问者采纳

以上是关于2个数组 如何判断2个数组中不同的元素的主要内容,如果未能解决你的问题,请参考以下文章

c#有两个数组,想把这个两组中相同的元素放在另一个数组中

去除2个数组中不同的数字

2个数组中遍历相同元素或不同元素

2个数组中遍历相同元素或不同元素

如何在Java中打印2个数组中的公共元素而没有排序输出

求算法,将N个整数分到M个数组中,要求元素和相差最小,元素个数相差最小