小编Jos*_*rke的帖子

如何使用.stream()将存储库中的数据按字母顺序排序

我正在尝试创建一种方法,使用.stream()将存储在存储库中的数据按字母顺序排序和输出.目前我有一个方法,按城市号ID按数字顺序对数据进行排序,我将在下面添加.有没有办法调整它来排序相同的数据,但按城市名称按字母顺序排序?

CityID方法 -

private void listCityDataInCityIdOrder() {
    System.out.format("\033[31m%s\033[0m%n", "City Id Order");
    System.out.format("\033[31m%s\033[0m%n", "=============");
    repository.getItems()
            .stream()
            .sorted()
            .map(c -> c.toString())
            .forEach(str -> System.out.print(str));
}
Run Code Online (Sandbox Code Playgroud)

数据集 -

1,"Cartagena","Spain",3
"2015",0.2,33,26,6,"S"
"2016",0.0,33,24,8,"SSW"
"2017",0.0,32,25,6,"E"
2,"Glasgow","Scotland",3
"2015",0.0,19,8,3,"SE"
"2016",0.1,21,11,6,"SE"
"2017",2.1,19,11,9,"SW"
Run Code Online (Sandbox Code Playgroud)

城市模型类 -

package model;

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

/**
 *
 * @author mga
 */
public class City implements Comparable<City>{
    private final int id;
    private String cityName;
    private String country;
    private List<YearData> yearDataCollection;

    private static int lastIdAllocated = 0;

    static final char EOLN='\n';
    static …
Run Code Online (Sandbox Code Playgroud)

java repository java-stream

3
推荐指数
1
解决办法
213
查看次数

标签 统计

java ×1

java-stream ×1

repository ×1