6

{1, 2, 3}ストリーム (例: -> )を使用して int の配列を String に結合しようとしていますが、"1, 2, 3"コンパイル エラーが発生し続けます。int/String 型の変換に問題があるようです。

配列はint[] IntArray = {1, 2, 3, 4}.

    String s1 = Arrays.stream(IntArray)
                        .map(String::valueOf)
                        .collect(Collectors.joining(", "));

コンパイルエラーが発生します:

Error:(20, 68) java: incompatible types: bad return type in lambda expression
java.lang.String cannot be converted to int

.map(Object::toString)マップラインをorに置き換えても.map(n -> Integer.toString(n))機能しません:

Error:(23, 49) java: incompatible types: invalid method reference
method toString in class java.lang.Object cannot be applied to given types
required: no arguments
found: int
reason: actual and formal argument lists differ in length

.map(Object::toString)および の最初のエラー.map(n -> Integer.toString(n))

4

1 に答える 1