在Eclipe,Java中,我正在研究一种方法,它处理一堆东西,最后需要返回带有参数Element的生成列表。这个列表可能是null,在这种情况下,我希望方法返回一个空列表。这是为了防止需要if(list != null)
检查,因为语句使用空列表。尝试避免返回NULL时输入类型安全警告
我这样做以下列方式:
return tempList == null ? Collections.EMPTY_LIST : tempList;
然而,这给出了以下警告:
类型安全性:类型列表中表达选中需要转换成comfirm到
List<Element>
。
Eclipse建议的所有解决方案都不起作用。我猜想问题是Collections.EMPTY_LIST
返回一个通用列表,但不知道如何解决这个问题。
谢谢,如果我按照以下步骤做了这个窍门: 列表 emptyList = Collections.emptyList(); return tempList == null? emptyList:tempList; 猜测它不可能避免局部变量,因为你需要知道类型。 –
Sven
查看@ Rangi的回答。 – Jeremy
因为无论如何你现在有两行,所以我会这样做'if(tempList == null)tempList = Collections.emptyList();' – yshavit