gpt4 book ai didi

java - 使用流 API 设置字符串全部小写但首字母大写

转载 作者:搜寻专家 更新时间:2023-10-30 19:51:02 24 4
gpt4 key购买 nike

我有一个 List<String>通过仅使用流 API,我将所有字符串设置为小写,将它们从最小字符串排序到最大字符串并打印它们。我遇到的问题是将字符串的第一个字母大写。

这是我通过 .stream().map() 做的事情吗? ?

public class Main {

public static void main(String[] args) {

List<String> list = Arrays.asList("SOmE", "StriNgs", "fRom", "mE", "To", "yOU");
list.stream()
.map(n -> n.toLowerCase())
.sorted((a, b) -> a.length() - b.length())
.forEach(n -> System.out.println(n));;

}

}

输出:

me
to
you
some
from
strings

期望的输出:

Me
To
You
Some
From
Strings

最佳答案

这样的东西就足够了:

 list.stream()
.map(n -> n.toLowerCase())
.sorted(Comparator.comparingInt(String::length))
.map(s -> Character.toUpperCase(s.charAt(0)) + s.substring(1))
.forEachOrdered(n -> System.out.println(n));
  1. 请注意,我已经更改了比较器,这基本上是执行此操作的惯用方法。
  2. 我在第一个字母大写排序后添加了一个 map 操作。

关于java - 使用流 API 设置字符串全部小写但首字母大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53733777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com