在一个集合中存储了无序并且重复的字符串,定义一个方法,让其有序(字典顺序),而且还不能去除重复
public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();list.add("ccc");list.add("ccc");list.add("aaa");list.add("aaa");list.add("bbb");list.add("ddd");list.add("ddd");sort(list);System.out.println(list);}/** 对集合中的元素排序,并保留重复* 1,void* 2,List<String> list*/public static void sort(List<String> list) {TreeSet<String> ts = new TreeSet<>(new Comparator<String>() { //定义比较器(new Comparator(){}是Comparator的子类对象)@Overridepublic int compare(String s1, String s2) { //重写compare方法int num = s1.compareTo(s2); //比较内容return num == 0 ? 1 : num; //如果内容一样返回一个不为0的数字即可}});ts.addAll(list); //将list集合中的所有元素添加到ts中list.clear(); //清空listlist.addAll(ts); //将ts中排序并保留重复的结果在添加到list中}
