1
6
|
2
3
一个同样丑陋但效率略高的答案是
然而,还有一些其他的事情需要观察。
|
3
1
生成的userOwners_仍然是可变的——对userOwners的任何更改都将是userOwners_的一部分。 如果您真的希望成员变量是不可变的,那么正确的方法是:
次要的一点是,您的成员变量命名没有遵循Java风格的准则(对于我们这些经常阅读Java代码的人来说,userOwners_很奇怪) 为了扩展另一位发帖者所写的内容:在接受公共方法的空输入(不抛出NPE)之前,要认真思考。这种行为可以隐藏错误——最好是快速失败并迫使调用方思考他们在做什么。 |
4
1
我更喜欢的方式是使用 Guava :
就像tackline的答案一样,这也抛出了一个异常,而不是无声地将null转换为空列表。
与这里的其他答案不同,使用
|
Exrelev · Sonarint多次关闭 7 年前 |
IvanRF · 停止Eclipse对类路径和设置的更新 8 年前 |
John Johnson · Java runtime.exec未正确执行 10 年前 |
Polyana Fontes · 使用try时资源泄漏。。。最后 11 年前 |
James Michael Hare · 构造只读空列表的最佳方法是什么? 11 年前 |