Java 泛型 元组的使用

来源:互联网 发布:陈潇的剩余人生淘宝 编辑:程序博客网 时间:2024/05/16 15:05

一个方法,只能有一个返回值,如果我们要返回多个对象,不用元组的话,唯一的方法就是建一个类,包含这些对象,然后返回这个类的实例,但这么一来,每个方法,如果返回的对象不同,就得定义一个不同的类。元组,就是定义一个类,包含有指定数目,但不定类型的对象,配合泛型,对象可以是任意类型。

/**
 * 容纳两个对象
 * @param <A>
 * @param <B>
 */
public class TwoTuple<A,B> {
//定义成final,返回后不可修改
public final A first;
public final B second;
public TwoTuple(A a,B b)
{
first=a;
second=b;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return first.toString()+second.toString();
}
}
/**
 * 
 * 容纳三个对象
 *
 * @param <A>
 * @param <B>
 * @param <C>
 */
class ThreeTuple<A,B,C> extends TwoTuple<A, B>{
public final C third;
public ThreeTuple(A a,B b,C c)
{
super(a, b);
third=c;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return super.toString()+third.toString();
}
}
使用方法:
public static void main(String[] args) {
// TODO Auto-generated method stub
TwoTuple<String,Integer> two=f();
System.out.println(two);
System.out.println(two.first);
System.out.println(two.second);
 
}
public static TwoTuple<String,Integer> f()
{
TwoTuple<String,Integer> two=new TwoTuple<String,Integer>("asfdsaf", 55535);
return two;
}
0 0
原创粉丝点击