在Java中编写通用方法的方法是使用泛型。以下是一个例子:
public class Utils {
/**
* 返回两个可比较对象中较小的一个
* @param a 第一个可比较对象
* @param b 第二个可比较对象
* @return 最小的可比较对象
*/
public static > T min(T a, T b) {
if (a.compareTo(b) <= 0) {
return a;
} else {
return b;
}
}
}
在这个例子中,我们使用泛型类型T来表示任何可比较的对象。在方法签名中,我们使用extends关键字来限制我们所使用的类型只能是实现了Comparable接口的类型,这是因为我们在方法中使用了compareTo方法。如果T类型没有实现Comparable接口,编译器将会报错。
这个方法可以用于比较任何可比较的对象,包括字符串、数字、日期等等。
我们可以使用以下代码来测试我们的方法:
String s1 = "hello";
String s2 = "world";
String minString = Utils.min(s1, s2);
System.out.println(minString); // 输出: hello
Integer i1 = 5;
Integer i2 = 2;
Integer minInt = Utils.min(i1, i2);
System.out.println(minInt); // 输出: 2
在这个例子中,我们测试了min方法对于字符串和数字的比较。这些示例只是一些简单的例子,您可以把这个方法用于任何其他对象。
上一篇:编写通用的React输入钩子