利用LinkedHashSet进行保持原有顺序去重 ,HashSet进行有序去重
import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
import java.util.Set;
//利用LinkedHashSet进行保持原有顺序排序
//HashSet进行有序去重
public class ListTest {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("设置List列表大小");
int count = scanner.nextInt();
List<Integer> list = buildRandom(count);
System.out.println(list);
Set<Integer> set = remove(list);
System.out.println(set);
scanner.close();
}
//赋值函数
public static List<Integer> buildRandom(int length) {
List<Integer> list = new ArrayList<Integer>(length);
for (int i = 0; i < length; i++) {
list.add(new Random().nextInt(20));
}
return list;
}
//去重函数
//如果要进行有序排序的话,把LinkedHashSet换成HashSet就可以了
public static Set<Integer> remove(List<Integer> list) {
Set<Integer> set = new LinkedHashSet<Integer>(list.size());
set.addAll(list);
return set;
}
}
测试结果: