java找出两个数组中不同的元素_找出两个数组中相同的元素

有两个数组,需要找出这两个数组之间相同的元素。

package cn.luxh.jpa.test;import java.util.HashSet;import java.util.Set;import org.junit.Test;public class ArrayTest {

/**

* 找出两个数组中相同的元素

* @param array1

* @param array2

* @return 返回相同的元素

*/

public Set findSameElementIn2Arrays(Integer[] array1,Integer[] array2) {

Set sameElementSet = new HashSet();//用来存放两个数组中相同的元素

Set tempSet = new HashSet();//用来存放数组1中的元素

for(int i=0;i

tempSet.add(array1[i]);//把数组1中的元素放到Set中,可以去除重复的元素

}

for(int j=0;j

//把数组2中的元素添加到tempSet中

//如果tempSet中已存在相同的元素,则tempSet.add(array2[j])返回false

if(!tempSet.add(array2[j])) {

//返回false,说明当前元素是两个数组中相同的元

sameElementSet.add(array2[j]);

}

}

return sameElementSet;

}

ff07140e684bf7bc1e716e8f1da3a31f.png

@Test

public void testFindSameElementIn2Arrays(){

Integer[] array1 = {1,2,3,4,1,2,4,6,7,8,10,22,33};

Integer[] array2 = {1,2,3,4,1,2,4,6,7,8,10,22,33,55,66,77,88,99};

Set sameElementSet = findSameElementIn2Arrays(array1,array2);

for(Integer i : sameElementSet) {

System.out.println(i);

}

}}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值