4

Eclipe、Javaでは、私はたくさんのことを行うメソッドに取り組んでおり、最後に引数Elementを使用して生成されたリストを返す必要があります。このリストがnullである可能性があります。その場合、メソッドに空のリストを返します。if(list != null)これは、forステートメントが空のリストで機能するため、どこでもチェックが必要になるのを防ぐためです。

私はこれを次のように行います:

return tempList == null ? Collections.EMPTY_LIST : tempList;

ただし、これにより次の警告が表示されます。

型安全性:型Listの式は、確認するためにチェックされていない変換が必要List<Element>です。

Eclipseが提案するすべてのソリューションは機能しません。問題はCollections.EMPTY_LIST一般的なリストを返すことだと思いますが、これを解決する方法がわかりません。

4

3 に答える 3

7

Collections.emptyList()空の、タイプセーフで不変のリストに使用します。

于 2012-05-19T16:02:39.203 に答える
7

ローカル変数の宣言を本当に避けたい場合は、この構文を使用してください。

return elements == null ? Collections.<Element>emptyList() : elements;
于 2012-05-19T16:14:35.667 に答える
0

戻ってみませんnew ArrayList<Element>()か?

于 2012-05-19T16:17:10.017 に答える