一个方法,只能有一个返回值,如果我们要返回多个对象,不用元组的话,唯一的方法就是建一个类,包含这些对象,然后返回这个类的实例,但这么一来,每个方法,如果返回的对象不同,就得定义一个不同的类。元组,就是定义一个类,包含有指定数目,但不定类型的对象,配合泛型,对象可以是任意类型。
/**
* 容纳两个对象
* @param
* @param
*/
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,b>
* @param
* @param
*/
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;
}</string,integer></string,integer></string,integer></string,integer>
转载至:https://www.pocketdigi.com/20131115/1202.html 应用开发笔记