7、Collections集合工具類
1. Collections概述和使用
- Collections類的作用:是針對集合操作的工具類
- Collections類常用方法:
- 示例程式碼:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class CollectionsDemo01 {
public static void main(String[] args) {
//建立集合物件
List<Integer> list = new ArrayList<Integer>();
//新增元素
list.add(30);
list.add(20);
list.add(50);
list.add(10);
list.add(40);
//public static <T extends Comparable<? super T>> void sort(List<T> list):將指定的列表按升序排序
// Collections.sort(list);
//public static void reverse(List<?> list):反轉指定列表中元素的順序
// Collections.reverse(list);
//public static void shuffle(List<?> list):使用預設的隨機源隨機排列指定的列表
Collections.shuffle(list);
System.out.println(list);
}
}
2. ArrayList集合儲存學生並排序
- 案例需求
ArrayList儲存學生物件,使用Collections對ArrayList進行排序
要求:按照年齡從小到大排序,年齡相同時,按照姓名的字母順序排序
- 程式碼實現:
學生類:
public class Student {
private String name;
private int age;
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
測試類:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
/*
思路:
1:定義學生類
2:建立ArrayList集合物件
3:建立學生物件
4:把學生新增到集合
5:使用Collections對ArrayList集合排序
6:遍歷集合
*/
public class CollectionsDemo02 {
public static void main(String[] args) {
//建立ArrayList集合物件
ArrayList<Student> array = new ArrayList<Student>();
//建立學生物件
Student s1 = new Student("linqingxia", 30);
Student s2 = new Student("zhangmanyu", 35);
Student s3 = new Student("wangzuxian", 33);
Student s4 = new Student("liuyan", 33);
//把學生新增到集合
array.add(s1);
array.add(s2);
array.add(s3);
array.add(s4);
//使用Collections對ArrayList集合排序
//sort(List<T> list, Comparator<? super T> c)
Collections.sort(array, new Comparator<Student>() {
@Override
public int compare(Student s1, Student s2) {
//按照年齡從小到大排序,年齡相同時,按照姓名的字母順序排序
int num = s1.getAge() - s2.getAge();
int num2 = num == 0 ? s1.getName().compareTo(s2.getName()) : num;
return num2;
}
});
//遍歷集合
for (Student s : array) {
System.out.println(s.getName() + "," + s.getAge());
}
}
}
相關文章
- Java —— 集合工具類(Collections 類)Java
- Java 集合類——Collections(1)Java
- Java 集合類——Collections(3)Java
- Java 集合類——Collections(2)Java
- Collections工具類
- 6、Collections工具類
- Java之Collections工具類Java
- 『政善治』Postman工具 — 7、Postman中儲存請求(Collections集合)Postman
- Collections工具類,可以使用collections工具類對程式碼中的list進行分組
- Collections — OrderedDict類
- YsoSerial 工具常用Payload分析之Common-Collections7(四)
- [Guava] Google Guava 集合工具類GuavaGo
- 【Java學習筆記】Collections集合Java筆記
- 用鬥地主的例項學會使用java Collections工具類Java
- java.util.Collection集合方法:Collections.BinarySearch 方法Java
- Ysoserial Commons Collections7分析
- java開發的第十五個部落格(Collections工具類和比較器)Java
- 集合類【Java】Java
- Java 的可變引數與 Collections 類Java
- Java安全之Commons Collections7分析Java
- 日常工作效率工具集合:分享 7 款極簡免費小工具
- 集合類關係
- Java集合類初探Java
- Java集合類——MapJava
- 如何使用 Laravel Collections 類編寫神級程式碼Laravel
- 開發工具集合
- Map集合類_演練
- Set集合類_演練
- Java集合類原始碼Java原始碼
- java集合類介紹Java
- Java集合類的概述Java
- 集合檢視子類
- 集合類的比較
- 工具類-字串工具類字串
- Java集合系列(一):集合的定義及分類Java
- 集合框架類結構圖框架
- Java 集合類入門篇Java
- Java集合類初步瞭解Java