Java 出现Incompatible conditional operand的原因

Incompatible conditional operand

Java程序开发中,使用instanceof关键词来检验char变量的类型的时候,集成开发环境IDE在代码的下方画出了红色波浪线,并提示:Incompatible conditional operand types char and char。这是怎么回事呢?

原因

这主要是因为Java中的instanceof关键字主要用于检测的是类的实例对象的类型,而不是Java中基本的数据类型,也就是说,instanceof不能直接应用于char类型变量,不仅如此,也不能直接应用于int、double等基本数据类型,要不然也会出现类似的error。

实例

如下代码,当instanceof直接应用于char、int、double等Java基本类型时,编译器或集成开发环境都可能给出相应的error提示:

public class test {
    public static void main(String[] args) {
        boolean x = 'a' instanceof char;
        boolean y = 1 instanceof int;
        boolean z = 2.0 instanceof double;
    }

}

免责声明:内容仅供参考,不保证正确性!


全栈后端 / Java教程 :









Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.