Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java8 list 排序

作者:拽一个给爷看   发布日期:2026-01-27   浏览:68

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

public class ListSortExample {
    public static void main(String[] args) {
        // 创建一个字符串列表
        List<String> list = new ArrayList<>();
        list.add("apple");
        list.add("orange");
        list.add("banana");
        list.add("grape");

        // 使用Java 8的stream API和lambda表达式进行排序
        list.sort(Comparator.naturalOrder()); // 自然顺序排序

        // 输出排序后的列表
        System.out.println("按字母顺序排序: " + list);

        // 按相反顺序排序
        list.sort(Comparator.reverseOrder());

        // 输出排序后的列表
        System.out.println("按相反字母顺序排序: " + list);
    }
}

解释说明:

  1. 创建列表:我们首先创建了一个包含多个字符串的 ArrayList
  2. 排序:使用 list.sort() 方法结合 Comparator.naturalOrder() 对列表进行自然顺序(即字母顺序)排序。如果你想按相反顺序排序,可以使用 Comparator.reverseOrder()
  3. 输出结果:最后,我们打印出排序后的列表。

如果你需要对自定义对象进行排序,可以参考以下代码:

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

class Person {
    String name;
    int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    @Override
    public String toString() {
        return name + " (" + age + ")";
    }
}

public class CustomObjectSortExample {
    public static void main(String[] args) {
        List<Person> people = new ArrayList<>();
        people.add(new Person("Alice", 30));
        people.add(new Person("Bob", 25));
        people.add(new Person("Charlie", 35));

        // 按年龄升序排序
        people.sort(Comparator.comparingInt(p -> p.age));

        // 输出排序后的列表
        System.out.println("按年龄升序排序: " + people);

        // 按名字降序排序
        people.sort(Comparator.comparing(Person::getName).reversed());

        // 输出排序后的列表
        System.out.println("按名字降序排序: " + people);
    }
}

解释说明:

  1. 自定义类:我们定义了一个 Person 类,包含 nameage 属性。
  2. 排序:使用 Comparator.comparingInt()age 进行升序排序,使用 Comparator.comparing() 结合 reversed()name 进行降序排序。
  3. 输出结果:最后,我们打印出排序后的列表。

上一篇:java获取list某个字段的值

下一篇:linux卸载java

大家都在看

java url decode

java判断是windows还是linux

java连接数据库的代码

java date类型比较大小

java djl

ubuntu 卸载java

es java api

java list 查找

java 解压rar

java读取excel中的图片

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站