?-6ren"> ?-当我检查 StoredCredential 的实例是否为 null 时 if(storedCredential != null){ //do something } Netbeans 7.1 显示-6ren">
gpt4 book ai didi

java - 是什么导致 "bad operand types for binary operator ' = =' "与第二种类型

转载 作者:搜寻专家 更新时间:2023-10-31 20:30:02 25 4
gpt4 key购买 nike

当我检查 StoredCredential 的实例是否为 null 时

if(storedCredential != null){
//do something
}

Netbeans 7.1 显示以下警告:

bad operand types for binary operator '=='
first type: com.blah.dbcore.mypublic.beans.StoredCredential
second type: <nulltype>

它编译正确并且没有抛出 RuntimeExceptions,但 Netbeans 仍然显示警告。使用“!=”检查实例是否不为空,会给出相同的错误。

下面的代码做同样的事情,但是不太清楚:

if (!(storedCredential instanceof StoredCredential)) {
//do something
}

Netbeans 对此表达式没有问题。

因为编译没有问题,我假设我将包含该类的 .jar 添加到库中的方式有​​问题。这是我在这个 jar 中遇到的唯一问题,这个 .jar 中没有其他类给我这个问题。

最佳答案

我也遇到过这个问题。此外,在我尝试将问题类的实例传递给接受对象作为参数的方法时,出现以下错误:

required: String,Object
found: String,SomeClass
reason: actual argument SomeClass cannot be converted to Object by method invocation conversion

原来编译器无法确定我的类的正确类型。

我的类(class)(我们称之为 com.blah.lib.SomeClass)在一个 NB 项目(我们称之为项目 1)中,并在第 3 方 jar 中扩展了一个类,这是项目 1 的库。

另一个 NB 项目(我们称它为项目 2)依赖于项目 1 并使用了 com.blah.lib.SomeClass,但其库中没有第 3 方 jar,因此在编译项目 2 时,编译器无法确定 com.blah.lib.SomeClass 的完全继承。

因此解决方案是将第 3 方 jar 也添加到项目 2 的库中。

我知道这已经有好几年了,但我想我会发布这个答案,以防它能帮助其他人在未来用谷歌搜索这个问题。

关于java - 是什么导致 "bad operand types for binary operator ' = =' "与第二种类型 <nulltype>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10447212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com