私は現在ジェネリックを学んでいます私はここにこのジェネリッククラスを持っています
package generics.lesson;
public class Pair<T> {
private T first;
private T second;
public Pair(){ first = null; second = null; }
public Pair(T first, T second){ this.first = first ; this.second = second;}
public T getFirst() { return first; }
public T getSecond() { return second; }
public void setFirst(T first) { this.first = first; }
public void setSecond(T second) { this.second = second; }
}
これまでのところ私はこれを理解していますが、それから私はこれに出くわしました
public static Pair<String> minmax(String[] a)
{
if(a.length == 0 || a == null) return null;
String min = a[0];
String max = a[0];
for(int i = 1 ; i < a.length ; i++)
{
if(min.compareTo(a[i])>0) min = a[i];
if(max.compareTo(a[i])<0) max = a[i];
}
return new Pair<String>(min,max);
}
私を混乱させるのはこれです
public static Pair<String> minmax(String[] a)
質問
これはどのように可能ですか?ジェネリッククラスはメソッドの戻り型にすることができますか?