Java instanceof 運(yùn)算符的使用方法
用法:
(類型變量 instanceof 類|接口)
作用:
instanceof 操作符用于判斷前面的對象是否是后面的類,或者其子類、實現(xiàn)類的實例。如果是則返回true 否則就返回false。
注意:
· instanceof前面的操作數(shù)的編譯時類型要么與后面的類相同,要么與后面的類具有父子繼承關(guān)系否則會引發(fā)編譯錯誤。
一個簡單的例子:
/**
* instanceof 運(yùn)算符
* @author Administrator
*
*/
public class TestInstanceof {
public static void main(String[] args) {
//聲明hello 時使用Object類,則hello的編譯類型是Object
//Object類是所有類的父類,但hello的實際類型是String
Object hello = "Hello";
//String是Object的子類可以進(jìn)行instanceof運(yùn)算,返回true
System.out.println("字符串是否為object類的實例:"
+ (hello instanceof Object));
//true
System.out.println("字符串是否為String的實例:"
+ (hello instanceof String));
//false
System.out.println("字符串是否為Math類的實例:"
+ (hello instanceof Math));
//String實現(xiàn)了Comparable接口,所以返回true
System.out.println("字符串是否為Comparable類的實例:"
+(hello instanceof Comparable));
/**
* String 既不是Math類,也不是Math類的父類,故下面代碼編譯錯誤
*/
//String a = "hello";
//System.out.println("字符串是否為Math類的實例:"
// + (a instanceof Math));
}
}
運(yùn)行結(jié)果:
字符串是否為object類的實例:true
字符串是否為String的實例:true
字符串是否為Math類的實例:false
字符串是否為Comparable類的實例:true
通常在進(jìn)行強(qiáng)制類型轉(zhuǎn)換之前,先判斷前一個對象是不是后一個對象的實例,是否可以成功轉(zhuǎn)換,從而保證代碼的健壯性。
相關(guān)文章
Springboot如何獲取上下文ApplicationContext
這篇文章主要介紹了Springboot如何獲取上下文ApplicationContext,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11
selenium4.0版本在springboot中的使用問題的坑
本文主要介紹了selenium4.0版本在springboot中的使用問題的坑,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
基于spring+quartz的分布式定時任務(wù)框架實現(xiàn)
在Spring中的定時任務(wù)功能,最好的辦法當(dāng)然是使用Quartz來實現(xiàn)。這篇文章主要介紹了基于spring+quartz的分布式定時任務(wù)框架實現(xiàn),有興趣的可以了解一下。2017-01-01
詳解Java?ReentrantReadWriteLock讀寫鎖的原理與實現(xiàn)
ReentrantReadWriteLock讀寫鎖是使用AQS的集大成者,用了獨(dú)占模式和共享模式。本文和大家一起理解下ReentrantReadWriteLock讀寫鎖的實現(xiàn)原理,需要的可以了解一下2022-10-10
Java開發(fā)常見錯誤之?dāng)?shù)值計算精度和舍入問題詳析
除了使用Double保存浮點數(shù)可能帶來精度問題外,更匪夷所思的是這種精度問題,下面這篇文章主要給大家介紹了關(guān)于Java開發(fā)常見錯誤之?dāng)?shù)值計算精度和舍入問題的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11
spring-boot List轉(zhuǎn)Page的方法步驟
這篇文章主要介紹了spring-boot List轉(zhuǎn)Page的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03

