2.使用Stream进行排序, Stream中操作Person对象,里面有name,age属性,按照年龄进行降序排列
时间: 2024-01-01 08:03:18 浏览: 69
可以使用Java 8的Stream API中的sorted方法,结合Comparator.comparing方法来完成按照年龄进行降序排列的操作。具体代码如下:
```
List<Person> personList = new ArrayList<>();
// 假设先向personList中添加了若干个Person对象
List<Person> sortedPersonList = personList.stream()
.sorted(Comparator.comparing(Person::getAge).reversed())
.collect(Collectors.toList());
```
上述代码中,我们首先使用stream()方法将personList转换为一个Stream对象,然后使用sorted方法对Stream中的元素进行排序。在sorted方法中,我们使用Comparator.comparing方法来指定按照Person对象的age属性进行排序,reversed()方法表示降序排列。最后,我们使用collect方法将排序后的Stream转换为一个List对象。
相关问题
使用Stream进行排序, Stream中操作Person对象,里面有name,age属性,按照年龄进行降序排列
可以使用Stream的sorted方法和Comparator来进行排序,具体实现如下:
```java
List<Person> personList = new ArrayList<>();
// 假设personList中已经有了多个Person对象
List<Person> sortedList = personList.stream()
.sorted(Comparator.comparingInt(Person::getAge).reversed())
.collect(Collectors.toList());
```
以上代码中,我们使用了Stream的sorted方法对Person对象进行排序,Comparator.comparingInt(Person::getAge)表示以Person对象的age属性作为排序依据,reversed()表示按照降序排列。最后将排序后的结果收集到一个新的List中。
使用Stream进行排序, Stream中操作Person对象,里面有name,age属性,按照年龄进行降序排列的具体代码
好的,这里提供一个使用 Stream 进行排序,操作 `Person` 对象,按照年龄进行降序排列的具体代码:
```java
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
public class PersonSortExample {
public static void main(String[] args) {
List<Person> personList = new ArrayList<>();
// 添加一些Person对象到List中
personList.add(new Person("Tom", 20));
personList.add(new Person("Jerry", 18));
personList.add(new Person("Alice", 30));
personList.add(new Person("Bob", 25));
// 使用Stream进行排序,按照年龄降序排列
List<Person> sortedList = personList.stream()
.sorted(Comparator.comparingInt(Person::getAge).reversed())
.toList();
// 输出排序后的结果
System.out.println(sortedList);
}
// Person类
static class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
}
```
在这个例子中,我们定义了一个 `Person` 类,包含了 `name` 和 `age` 两个属性。我们使用 `List` 来存放多个 `Person` 对象,然后使用 Stream 进行排序,按照年龄进行降序排列。具体来说,我们使用 `sorted` 方法,传入一个 `Comparator` 对象,使用 `Comparator.comparingInt` 方法来指定按照年龄进行比较,然后使用 `reversed` 方法来指定降序排列。最终,我们得到了一个新的排序后的 `List`,并输出了结果。
阅读全文