在 "normal" class 及其 return 中声明泛型方法
Declare Generic method in a "normal" class and its return
我需要一个非泛型 class 包含一个带有两个泛型参数的方法。在这种方法中,我的目标是比较两个通用参数和 return 中较大的值。我该怎么做?
public class generic <T extends Comparable<T>>{
public T Max( T pv, T sv){
if(pv.compareTo(sv)>=0){
return pv;
}else {
return sv;
}
}
public static void main(String[]args){
generic g = new generic();
System.out.println(g.Max( 2, 7));
}
}
移到方法声明处即可
public class Generic {
public <T extends Comparable<T>> T max( T pv, T sv){
if (pv.compareTo(sv) >= 0) {
return pv;
} else {
return sv;
}
}
public static void main(String[]args){
Generic g = new Generic();
System.out.println(g.max(2, 7));
}
}
该方法也可以是静态的,因为它不依赖于任何状态。调用起来更方便
System.out.println(max(2, 7));
我需要一个非泛型 class 包含一个带有两个泛型参数的方法。在这种方法中,我的目标是比较两个通用参数和 return 中较大的值。我该怎么做?
public class generic <T extends Comparable<T>>{
public T Max( T pv, T sv){
if(pv.compareTo(sv)>=0){
return pv;
}else {
return sv;
}
}
public static void main(String[]args){
generic g = new generic();
System.out.println(g.Max( 2, 7));
}
}
移到方法声明处即可
public class Generic {
public <T extends Comparable<T>> T max( T pv, T sv){
if (pv.compareTo(sv) >= 0) {
return pv;
} else {
return sv;
}
}
public static void main(String[]args){
Generic g = new Generic();
System.out.println(g.max(2, 7));
}
}
该方法也可以是静态的,因为它不依赖于任何状态。调用起来更方便
System.out.println(max(2, 7));