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
- 工具類——自定義Collections集合方法
- Java 集合類——Collections(1)Java
- Java 集合類——Collections(3)Java
- Java 集合類——Collections(2)Java
- Collections工具類
- 6、Collections工具類
- Java之Collections工具類Java
- 『政善治』Postman工具 — 7、Postman中儲存請求(Collections集合)Postman
- JavaSE基礎:Collections工具類Java
- 集合框架-Collections框架
- Collections工具類,可以使用collections工具類對程式碼中的list進行分組
- Java 常用工具類 Collections 原始碼分析Java原始碼
- [Guava] Google Guava 集合工具類GuavaGo
- 【Java學習筆記】Collections集合Java筆記
- YsoSerial 工具常用Payload分析之Common-Collections7(四)
- 用鬥地主的例項學會使用java Collections工具類Java
- 集合框架-Arrays工具類的asList()方法(把陣列轉成集合)框架陣列
- list集合、txt檔案對比的工具類和檔案讀寫工具類
- Android開發免費類庫和工具集合Android
- 【集合框架】JDK1.8原始碼分析之Collections && Arrays(十)框架JDK原始碼
- java開發的第十五個部落格(Collections工具類和比較器)Java
- java 所有的集合類以及Apache的集合類???JavaApache
- 集合類【Java】Java
- Ysoserial Commons Collections7分析
- Java 的可變引數與 Collections 類Java
- 安全工具集合
- Java集合類初探Java
- Java集合類——MapJava
- Java集合類綜合Java
- Java安全之Commons Collections7分析Java
- 如何使用 Laravel Collections 類編寫神級程式碼Laravel
- 測試工具集合
- 開發工具集合
- Java集合類的概述Java
- java集合類介紹Java
- JavaSE基礎:集合類Java
- Java集合類詳解Java