簡體   English   中英

java中的instanceOf運算符

[英]instanceOf operator in java

為什么Java中的這行代碼不能打印消息?

System.out.println("a instanceof String:"+a instanceof String);

為什么它只是打印真實而不是之前的字符串???

啊,運營商優先的樂趣。 該行有效:

System.out.println(("a instanceof String:" + a) instanceof String);

...所以你正在進行字符串連接,然后檢查結果是否是一個字符串。 因此,無論a的值如何,它都將始終打印為true

你只需要括號

System.out.println("a instanceof String:" + (a instanceof String));

有關優先級列表,請參閱運算符Java教程頁面

您的代碼將按如下方式執行:

System.out.println(("a instanceof String:"+a) instanceof String);

因此,整個字符串ie ("a instanceof String:"+a)已被考慮用於檢查instanceof

要打印"a instanceof String:true" ,您需要在正確的位置使用括號:

System.out.println("a instanceof String:" + (a instanceof String));

你必須使用括號。

System.out.println(("a instanceof String:"+a) instanceof String);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM