class C {
static <A,B> Pair<B,A> swap (Pair<A,B> p) {
return new Pair<B,A>(p.second, p.first);
}
}
Pair<String,Integer> p =
new Pair<String,Integer>("foo", 42);
Pair<Integer,String> q = C.swap(p);
bei Benutzung werden Typargumente inferiert
in C#: Typargumente könne auch angegeben werden.
Pair<Integer,String> q =
C.swap<String,Integer>(p);