2017-01-26 1 views
3

私はラムダ式について学んでいます。ソートされた文字列を返す方法は不思議でした。たとえば、私が "cba"を持っていれば、私は "abc"が欲しいです。通常は次のようにします:ラムダ式の文字列をJavaでどのようにソートしますか?

ラムダ式で1行にする方法はありますか?

+0

http://stackoverflow.com/a/21970805/4828463 –

+0

またはこれからIntStreamを使用することができます。 http://stackoverflow.com/a/36255014/4828463 –

答えて

2

はい、あなたはそのようにこれを行うことができます:

final String s = "cba"; 
final String collect = Arrays.stream(s.split("")) 
      .sorted() 
      .collect(Collectors.joining("")); 
+0

これはすごく、ありがとうございます! –

2

あなたはString.chars()

"cba" 
      .chars() 
      .sorted() 
      .mapToObj(value -> (char) value) 
      .collect(StringBuilder::new, StringBuilder::append, StringBuilder::append) 
      .toString() 
関連する問題