java instanceof的使用

先看下面的程序:

public class Type2 {
	public static void main(String[] args) {
		String a = null;
		String b = new String();
		System.out.println("a instanceof String :" + (a instanceof String));
		System.out.println("b instanceof String :" + (b instanceof String));
	}
}

結果是

a instanceof String :false
b instanceof String :true

也就是說如果一個對象的值爲null的話,那麼它不能算是任何類型的類對象。


這裏還有一個有趣的現象,如果

public class Type2 {
    public static void main(String[] args) {
        String a = null;
        String b = new String();
        System.out.println("a instanceof String :" + a instanceof String);
        System.out.println("b instanceof String :" + b instanceof String);
    }
}

將b instanceof String外邊的括號去掉的話,結果又會變成

true
true

也就是說instanceof 運算符的優先級要低於“+”的優先級。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章