Java - 从函数返回混合数据

标签 java

我对编程并不陌生,但对 Java 很陌生。我有一个应用程序,其函数需要返回从数据库中提取的整数和短值,因此我可以调用该函数,然后在其他地方使用这两个值。我尝试过一个 HashMap ,我知道它可以做到这一点,但我不想迭代任何东西。它将始终是找到的单个“记录”,因此一个 Int 和一个 Short。

最好的方法是什么?

最佳答案

更通用的解决方案是创建 Pair<T1, T2>类,类似于 ML/OCaml/F# 或 Tuple 中的元组构造C# 中的类,但不太好(尤其是因为此问题的通用解决方案会由于基元的装箱/拆箱而损失性能):

public final class Pair<T1, T2> {
    private final T1 item1;
    private final T2 item2;

    public Pair(T1 item1, T2 item2) {
        this.item1 = item1;
        this.item2 = item2;
    }

    public T1 getItem1() {
        return item1;
    }

    public T2 getItem2() {
        return item2;
    }
}

不过,这个类确实有一个好处,只要 T1T2是不可变的,类型为 Pair 的对象也是不可变的。

关于Java - 从函数返回混合数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9456302/

相关文章:

java - 无法在 java Web 服务中加载文件

java - 在 Java 中实现 Soundex

java - maven3-maven-antrun-插件- "failed to create task or type if"

java - 一个应用程序显示无法执行 dex : GC overhead limit exceeded GC overhead limit exceeded in eclipse

java - 如何在 Java Swing 可编辑组合框中注册 MouseClick 事件

java - 如何将字符串键和浮点值的 Json 树转换为 Map

java - 不知道密码时如何重置 keystore ?

Java串行通信: way to set receieve threshold when using async.读取通知

java - 如何在 JSNI 中使用 GWT $entry 函数?

eclipse 中的 java.lang.NoClassDefFoundError : org/aopalliance/intercept/MethodInterceptor with TransactionInterceptor error on maven pom. xml