Collection工具类01
-
Collections工具类介绍
-
Collections是一个操作Set、List和Map等集合的工具类
-
Collections中提供了一系列静态的方法对及格元素进行排序、查询和修改等操作
-
-
排序操作:(均为static方法)
-
reverse(List):反转List中的元素顺序
-
shuffle(List):对List集合元素进行随机排序
-
sort(List):根据元素的自然顺序对指定List集合元素按升序排序
-
sort(List,Comparator):根据指定的Comparator产生的顺序对List集合元素进行排序
-
swap(List, int , int):将指定list集合中的 i 处元素和 j 处元素进行交换
-
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Collection01 {
public static void main(String[] args) {
//创建ArrayList
ArrayList arrayList = new ArrayList();
arrayList.add("Jack");
arrayList.add("Tom");
arrayList.add("Rose");
arrayList.add("CiCI");
System.out.println(arrayList);
//1. reverse(List):反转List中的元素顺序
Collections.reverse(arrayList);
System.out.println(arrayList);
//2. shuffle(List):对List集合元素进行随机排序
Collections.shuffle(arrayList);
System.out.println(arrayList);
//3. sort(List):根据元素的自然顺序对指定List集合元素按升序排序
Collections.sort(arrayList);
System.out.println(arrayList);
//4. sort(List,Comparator):根据指定的Comparator产生的顺序对List集合元素进行排序
Collections.sort(arrayList, new Comparator<Object>() {
@Override
public int compare(Object o1, Object o2) {
//按照大小字符串长度大小排序
return ((String)o2).length() - ((String)o2).length();
}
});
System.out.println(arrayList);
//5. swap(List, int , int):将指定list集合中的 i 处元素和 j 处元素进行交换
Collections.swap(arrayList,0,1);
System.out.println(arrayList);
}
}
/*
运行结果:
[Jack, Tom, Rose, CiCI]
[CiCI, Rose, Tom, Jack]
[Tom, Rose, Jack, CiCI]
[CiCI, Jack, Rose, Tom]
[CiCI, Jack, Rose, Tom]
[Jack, CiCI, Rose, Tom]
*/
Collection工具类02
-
Object max(Collection): 根据元素的自然顺序,返回给定集合中的最大元素
-
Object max(Collection, Comparator): 根据 Comparator 指定的顺序,返回给定集合中的最大元素
-
Object min(Collection)
-
Object min(Collection, Comparator)
-
int frequency(Collection, Object):返回指定集合中指定元素的出现次数
-
void copy(List dest,List src): 将src中的聂荣赋值到dest中
-
boolean replaceAll(List list, Object oldVal, Object newVal):使用新值替换 List 对象的所有旧值
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Collection02 {
public static void main(String[] args) {
//创建ArrayList
ArrayList arrayList = new ArrayList();
arrayList.add("Jack");
arrayList.add("Tom");
arrayList.add("Rose");
arrayList.add("CiCi");
arrayList.add("Jack");
System.out.println(arrayList);
//- Object max(Collection): 根据元素的自然顺序,返回给定集合中的最大元素
System.out.println(Collections.max(arrayList));
//- Object max(Collection, Comparator): 根据 Comparator 指定的顺序,返回给定集合中的最大元素
Object maxObject = Collections.max(arrayList, new Comparator<Object>() {
@Override
public int compare(Object o1, Object o2){
return ((String)o1).length() - ((String)o2).length();
}
});
System.out.println(maxObject);
//- Object min(Collection)
System.out.println(Collections.min(arrayList));
//- Object min(Collection, Comparator)
Object minObject = Collections.min(arrayList, new Comparator<Object>() {
@Override
public int compare(Object o1, Object o2) {
return ((String)o1).length() - ((String)o2).length();
}
});
System.out.println(minObject);
//- int frequency(Collection, Object):返回指定集合中指定元素的出现次数
System.out.println(Collections.frequency(arrayList,"Jack"));
//- void copy(List dest,List src): 将src中的内容赋值到dest中
ArrayList arrayList1 = new ArrayList();
arrayList1.add("");
arrayList1.add("");
arrayList1.add("");
arrayList1.add("");
arrayList1.add("");
Collections.copy(arrayList1,arrayList);
System.out.println(arrayList1);
//- boolean replaceAll(List list, Object oldVal, Object newVal):使用新值替换 List 对象的所有旧值
Collections.replaceAll(arrayList,"Jack","CoCo");
System.out.println(arrayList);
}
}
/*
运行结果:
[Jack, Tom, Rose, CiCi, Jack]
Tom
Jack
CiCi
Tom
2
[Jack, Tom, Rose, CiCi, Jack]
[CoCo, Tom, Rose, CiCi, CoCo]
*/