3 回答

TA貢獻1863條經(jīng)驗 獲得超2個贊
instanceof 運算符是用來在運行時指出對象是否是特定類的一個實例。instanceof通過返回一個布爾值來指出,這個對象是否是這個特定類或者是它的子類的一個實例。
用法:
result = object instanceof class
參數(shù):
result
必選項。任意變量。
object
必選項。任意對象表達式。
class
必選項。任意已定義的對象類。
說明:
如果 object 是 class 的一個實例,則 instanceof 運算符返回 true。如果 object 不是指定類的一個實例,或者 object 是 null,則返回 false。
例如:
Boolean b;
String str = "foo";
b = ( str instanceof String ); // true
b = ( str instanceof Object ); // also true
b = ( str instanceof Date ); // false, not a Date or subclass
注意:
1)null值不是任何對象的實例,所以下面這個例子返回了false,無論這個變量聲明的是什么類型。
String s = null;
if ( s instanceof String )
// false, won't happen
2)instanceof也可以正確的報告一個對象是否是數(shù)組和特定的接口類型。
if ( foo instanceof byte[] )

TA貢獻1802條經(jīng)驗 獲得超10個贊
如果要寫成一個方法肯定是可以的。因為list 和set都是繼承的collection,而且也都繼承object類。
可以寫成:
Collection<Integer> fun(Collection <Integer> col){
return col;
}

TA貢獻1836條經(jīng)驗 獲得超3個贊
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.Reader;
import org.junit.Test;
public class InstanceTest {
@Test
public void test() throws FileNotFoundException {
FileReader fr = new FileReader("d:\\abc.txt");
System.out.println(fr instanceof Reader);
//這里是多態(tài),父類引用指向子類對象
Reader reader = new FileReader("d:\\abc.txt");
System.out.println(reader instanceof FileReader);
System.out.println(reader instanceof Reader);
}
}
- 3 回答
- 0 關(guān)注
- 999 瀏覽
添加回答
舉報