我想编写一个函数,允许多种输入类型:功能输入允许不同类型
即
public void func(TYPE variable) {
if (variable instanceof String)
//do string stuff
else if (variable instanceof double)
//do double stuff
}
什么我必须声明的类型?我必须使用泛型吗?
谢谢
我想编写一个函数,允许多种输入类型:功能输入允许不同类型
即
public void func(TYPE variable) {
if (variable instanceof String)
//do string stuff
else if (variable instanceof double)
//do double stuff
}
什么我必须声明的类型?我必须使用泛型吗?
谢谢
java.lang.Object并使用instanceof来检查类型并执行操作。
public void func(Object variable) {
if (variable instanceof String)
//do string stuff
else if (variable instanceof double)
//do double stuff
}
更多关于泛型和使用它,请参阅
http://download.oracle.com/javase/tutorial/java/generics/gentypes.html
您可以为每个需要的类型参数的创建相同的功能。调用该函数将通过参数的类型推断:
public void func(String string) {...}
public void func(double double) {...}
重点是我想创建一个功能。谢谢。 – switz
我想,其实,当我用'variable.compareTo(字符串)'是说,这是一个'String'功能,而不是一个'Object'功能。 – switz
在调用compareTo((String)o).compareTo(otherString)之前进行转换。 – kgautron