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 运算符的优先级要低于“+”的优先级。

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