我想編寫一個函數,允許多種輸入類型:功能輸入允許不同類型
即
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