一,场景:

        通常一个方法返回一个结果,或者一个结果集,当一个方法返回多个结果或者多个对象时该怎么办?

二,常见做法:

        方法一:将多个结果或者对象封装到一个对象实例当中去,然后将该实例作为方法的结果返回,一般都是参数超过三个或者三个以上才封装到一个实例中,缺点就是当有多个线程调用时,频繁的创建对象,浪费资源。

方法二:使用map结构作为方法返回对象,将要返回的两个内容以“key”,“value”的形式来存储

方法三:使用Java中javafx.util包下的Pair,可以返回两个对象,泛型自己定义,有点类似于map,但又不同于map,map返回的结果是{key=value},Pair返回的是key=value,用法案例如下

  public static Pair<String,String> phonePrefix(String var) {
        if (null == var) {
            return null;
        }
        String prefix = null;
        String phone = null;
        if (var.length() == 11) {
            phone = var;
        }else {
            prefix = var.substring(0,var.length()-11);
            phone = var.substring(var.length()-11);
        }
        return new Pair<>(prefix, phone);
    }
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐