2

私は Xtend を使用して Android アプリを作成していますが、elvis 演算子を使用して以下を簡素化したいと考えていました (これは機能します)。

val c = if (projection != null) new MatrixCursor(projection) else new MatrixCursor(#[MediaStore$MediaColumns::DISPLAY_NAME, MediaStore$MediaColumns::SIZE])

elvis 演算子を使用して、次のように書きました。

val c = new MatrixCursor(projection ?: #[MediaStore$MediaColumns::DISPLAY_NAME, MediaStore$MediaColumns::SIZE])

私が理解している限り、これは同じように機能します。

ただし、Eclipse で次のエラーが発生しました。Type mismatch: cannot convert from Object to String[]何が問題なのですか?

Xtend 2.4 を使用しています。MatrixCursorコンストラクターのシグネチャはMatrixCursor(String[])であり、projection明示的に として定義されていString[]ます。

4

1 に答える 1