我有一个Java类中的方法,它使用了类似的逻辑(这不是真实代码,只是为了举例简化过的)。
private Boolean method(Boolean booleanValue, SomeObject object) {
return booleanValue ? Arrays.asList(object.getStringsArray()).contains("string") : false;
}
一位协作者自己进行PR检查,并给出了以下评论:
这是低效的。它只是为了迭代并检查某个字符串而创建一个新的数据结构。
getStringsArray()
方法返回一个String[]
,那么使用for循环会比Arrays.asList()
更好吗?
哪种方法更有效?
List
对象由数组支持,因此没有性能损失。即使如何执行此操作的规范答案也使用此方法。 - 4castleBoolean
而不是boolean
是一个坏主意,而且Object
没有getStringsArray
方法。 - user2357112