【发布时间】:2012-07-22 12:19:25
【问题描述】:
我想编写一个方法来检查 null 是否有任何类型的值,并相应地返回相同类型的值。如何以通用方式编写它,以便我可以传递任何参数并在它不是 null 或相同类型的新对象时返回相同的参数?
这样的事情会有所帮助,但显然以下内容不会起作用:
public T getValue(T param) {
if (null != param) {
return param;
} else {
return ""; // or return new T
}
}
【问题讨论】:
-
在每种情况下,答案都是“你真的不能,除非你们都愿意传递
Class对象,并且你们愿意接受这种方法的脆弱性。” -
@LouisWasserman:你能解释一下吗?传递类对象是什么意思?
标签: java generics jakarta-ee methods parameters