我有一个主类和 VOCollection 类。 在主类中有一个名为 getStatus() 的方法,从这个方法中我只能获取一些状态(true,false),如果状态为 true,我需要返回一个集合。 目前我有两个想法,但是都很贵。
返回映射,它的成本很高,因为为集合设置 boolean 值会导致代码困惑,并且只有一个 boolean 值就足够了(但我们返回多个)。
在 VOCollection 类中创建一个实例变量,并使用 getter 和 setter 来获取和设置 boolean 值。这也很贵。 (在另一个类中创建变量)。
给我更便宜的解决方案。
最佳答案
有多种方法可以做到这一点:
- 返回 null 表示不存在类似 java.util.Map.get() 的内容
- 创建一个自定义类以返回两个参数。 (参见其他答案)
- 使用 1 元素数组作为返回值之一。 boolean 方法(列表[]结果){ 结果[0] = 答案; 返回标志; }
- 使用像 Google Guava 这样具有 Pair/Tuple 类的库: 配对方法() { 返回新的对(标志,答案); }
- 更改您的代码,这样就没有必要了,这通常是正确的答案。查看异常注释或更改传递内容的方式。
关于java - 如何以更少的费用从java中的方法返回两个值(1.Collection,2.Single Boolean value)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6182464/