You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Collectors函数中对获取的货币代码ArrayList进行排序?

解决货币代码列表未排序的问题

你只需要在Stream流的处理链中添加sorted()操作,就能让货币代码按自然字母顺序排序后再收集成列表,修改后的代码如下:

List<String> currencies = Currency.getAvailableCurrencies().stream()
    .map(Currency::getCurrencyCode)
    .sorted() // 新增排序步骤,按自然字母顺序排列
    .collect(Collectors.toList());

如果需要不区分大小写的排序(虽然货币代码本身都是大写,但这个写法可以作为通用参考),可以传入指定的排序比较器:

List<String> currencies = Currency.getAvailableCurrencies().stream()
    .map(Currency::getCurrencyCode)
    .sorted(String.CASE_INSENSITIVE_ORDER)
    .collect(Collectors.toList());

另外,你也可以选择在收集完列表后再排序,不过流式处理中直接排序的方式更连贯高效:

List<String> currencies = Currency.getAvailableCurrencies().stream()
    .map(Currency::getCurrencyCode)
    .collect(Collectors.toList());
Collections.sort(currencies); // 收集后对列表进行排序

内容的提问来源于stack exchange,提问作者MayRegio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 02:01:05