数组去重也是比经典的一个算法 这里演示了三种不同的数组去重操作
1.利用Hashset本身无序的特性进行去重
public class Test04 {
public void remove() {
Set<Integer> set = new HashSet<>();
int[] arr = {1, 2, 3, 4, 5, 6, 2, 3, 4};
for (int i :arr){
set.add(i);
}
System.out.println(set);
}
}
2.利用ArrayList进行去重
public void remove() {
List<Integer> list = new ArrayList<>();
int[] arr = {1, 2, 3, 4, 5, 6, 2, 3, 4};
for (int i :arr){
if (!list.contains(i)){
list.add(i);
}
}
System.out.println(list);
}
}
3.双重for循环
public void remove() {
int[] temp = {1,2,4,4,5,5,6,7,8};
ArrayList<Integer> Arr = new ArrayList<>();
for(int x=0;x<temp.length;x++) {
boolean flag= true;
for (int y=x+1;y<temp.length;y++){
if (temp[x]==temp[y]){
flag=false;
break;
}
}
if(flag){
Arr.add(temp[x]);
}
}
System.out.println(Arr);
}
}