场景
当我们调用某个方法,需要有超过一个值的返回时,我们通常会怎么做,比如现在需要调用方法返回姓名和年龄两个属性(假如姓名为张三,年龄为12)。
- 方式一:使用Map,将Map中分别放入name为key,张三为value;age为key,12为value。
- 缺点是需要定义key值,且书写语法比较繁琐。
- 优点是定义明确。
- 方式二:直接定义一个Person对象,定义name和age两个属性。
- 缺点是比较繁琐,这个Person对象可能整个项目中只被使用这一次。
- 优点是定义非常明确,不容易产生歧义。
新的方法
下面介绍一种新的方法,当我们方法调用返回值大于一个属性,且就仅有这一次调用,不存在复用和共用问题时,可以采用如下方式:
package objectDemo; import org.apache.commons.lang3.tuple.ImmutablePair; import org.apache.commons.lang3.tuple.ImmutableTriple; public class Demo { public static void main(String[] args) { ImmutablePair<String, Integer> person = ImmutablePair.of("张三", 12); System.out.println(person); ImmutableTriple<String, Integer, String> personInfo = ImmutableTriple.of("李四", 20, "上海"); System.out.println(personInfo); } }
输出结果为:
(张三,12) (李四,20,上海)标签:调用,定义,ImmutableTriple,ImmutablePair,12,key,使用 From: https://www.cnblogs.com/xin-xing/p/17171661.html