问题
给一个字符串,将其转为驼峰形式的字符串。
例子
camelCase("hello case"); // => "HelloCase"
camelCase("camel case word"); // => "CamelCaseWord"
我的代码
package codewars;
import java.util.stream.Stream;
public class CamelCase {
public static String camelCase(String str) {
if (str.isEmpty())
return str;
return Stream.of(str.trim().split("\\s+")).map(e -> e.substring(0, 1).toUpperCase() + e.substring(1)).reduce("", (a,b) -> a+b);
}
public static void main(String[] args) {
System.out.println(CamelCase.camelCase("df sdf sd"));
}
}
分析
用Stream 很简洁的解决这个问题:
- 判断是否为空,是的话直接返回
- 空格切分为数字
- 将每个元素的首字符转大写
- 拼接成字符串返回