package org.limewire.collection;
/**
* Typed tuple that holds two objects of possibly different types.
* @param <T1> the type of the first object
* @param <T2> the type of the second object
*/
public class Tuple<T1, T2> {
private final T1 obj1;
private final T2 obj2;
/**
* Constructs a tuple for two objects.
*/
public Tuple(T1 obj1, T2 obj2) {
this.obj1 = obj1;
this.obj2 = obj2;
}
/**
* Returns the first object.
*/
public T1 getFirst() {
return obj1;
}
/**
* Returns the second object.
*/
public T2 getSecond() {
return obj2;
}
@Override
public String toString() {
StringBuilder builder = new StringBuilder("first: ");
builder.append(obj1);
builder.append(", second: ");
builder.append(obj2);
return builder.toString();
}
}