1.在一个集合中找到重复的元素?
Integer[] arr = {1,2,1,2,3,3,4,5,6,1,2,7};
// 找出集合中重复的有哪些
Set<Integer> Set = new HashSet<>();
for(int i=0;i<arr.length;i++){// 对元素进行遍历取出各个元素
for(int j=0;j<arr.length;j++){// 再将各个元素与其比较
if(j!=i){// 元素本身不比较的情况下,还能遇到重复的那说明
// 说明了什么,这个元素重复了
if(arr[i]==arr[j]){
Set.add(arr[i]);// 查找到相同元素就加入到set集合里
}
}
}
}
System.out.println(Set);
输出结果:[1,2,3]
在查找到重复的基础上,可以直接去查找不重复的:
// 查找不重复的
for (int i = 0; i < arr.length; i++) {
if(!Set.contains(arr[i])){
System.out.println(arr[i]);
}
}
输出结果: 4 5 6 7
2.在一个集合中找到不重复的元素?
// 找出集合中不重复的有哪些
Integer[] arr1 = {1,1,1,2,3,3,2,2,6,7};
for (int i = 0; i < arr1.length; i++) { //对元素进行遍历取出各个元素
int count = 0; //计数,如果遇到相同的++
for (int j = 0; j < arr1.length; j++) { //再将各个元素与其比较
if(arr1[i] == arr1[j]){ // 如果相等
count++; //++,重复的情况,遇到相同的次数那简直不要太多
}
}
if(count == 1){ // 而没有重复的,它只会和它自己遇到一次,仅此一次,所以也只会是1
System.out.println(arr1[i]);
}
}
输出结果:[6,7]
在此,祝各位帅哥美女,步步高升,一帆风顺!!!