java - 如何以更少的费用从java中的方法返回两个值(1.Collection,2.Single Boolean value)?

标签 java methods boolean return

我有一个主类和 VOCollection 类。 在主类中有一个名为 getStatus() 的方法,从这个方法中我只能获取一些状态(true,false),如果状态为 true,我需要返回一个集合。 目前我有两个想法,但是都很贵。

  1. 返回映射,它的成本很高,因为为集合设置 boolean 值会导致代码困惑,并且只有一个 boolean 值就足够了(但我们返回多个)。

  2. 在 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/

相关文章:

java - 为什么 C 需要原型(prototype)函数而 Java 不需要?

java - 如何使用自定义类型参数表单 java 调用 PostgreSQL 存储过程

java - 如何使我的方法接受 x 个参数

java - 如何访问子类中的方法

jsp - 如何将 boolean 值表示为 "yes"或 "no"?

java - 方法提取、泛型、反射

java - android UDP 不可靠性

JavaScript 可见性 : Private and Privileged methods:

c# - 了解 DirectoryInfo.Exists 上的 boolean 值

java - 如何使用 JavaFX 将复选框的值传递给另一个方法?