1. 程式人生 > 其它 >對List集合中的物件按某個屬性進行排序

對List集合中的物件按某個屬性進行排序

技術標籤:javaarraylist

上程式碼:

import java.util.ArrayList;
import java.util.Collections;

import static java.util.Comparator.comparing;

public class Test5 {

    public static void main(String[] args) {
        //建立集合並賦值
        ArrayList<People> peopleList = new ArrayList<>();
        for (
int i = 0; i < 5; i++) { People people = new People(); people.setNumber("A0"+i); people.setName("張三"+i); peopleList.add(people); } //亂序 Collections.shuffle(peopleList); System.out.println("排序前==========》"
+peopleList.toString()); //按照People物件的number屬性進行倒序排序 peopleList.sort(comparing(People::getNumber).reversed()); System.out.println("倒序排序後==========》"+peopleList.toString()); //按照People物件的number屬性進行正序排序 peopleList.sort(comparing(People::getNumber)); System.
out.println("正序排序後==========》"+peopleList.toString()); } }

效果圖:
在這裡插入圖片描述
也可以這樣:

//正序
Collections.sort(peopleList,((o1, o2) -> o1.getNumber().compareTo(o2.getNumber())));
//倒序
Collections.sort(peopleList,((o1, o2) -> o2.getNumber().compareTo(o1.getNumber())));

效果是一樣的