2016-02-13 19 views
2

我在Android工作室遇到以下奇怪的行为...Android工作室对象为空或不为空?

对象在源代码中为空,但如果我尝试在监视列表中检查它不是null并且所有属性都是可读的。

提供者和数据库是实现接口的对象。

enter image description here

它是一个错误还是我做错了什么?

编辑: 如果我将数据库对象的可访问性切换为私有,然后使用getDatabase()和setDatabase()扩展接口,则返回的数据库对象不是NULL。

+0

麻烦吗?运行时会发生什么(如果您可以检查)?也许这只是Android Studio中的一个小错误。 – arielnmz

+0

没有if运算符会崩溃,因为数据库成员为空 –

+0

然后这是Android Studio中的一个错误。 – arielnmz

回答

-3

如果this.provider为空,则this.provider.database自动也为空。

只能检查其中之一。

或使用&&运算符。

+0

this.provider不为null只有数据库成员,并且只在源代码中,如果我预览提供者对象,数据库成员不为null ... –

+1

如果一个对象为null,则它不是任何内容,因此您无法调用任何内容对吧,对吧? – xdevs23