你能解释这个作业吗?这是什么意思?
boolean activityExists = testIntent.resolveActivity(pm) != null;
答案 0 :(得分:11)
如果true
未返回testIntent.resolveActivity(pm)
,则表示null
分配false
,否则分配boolean activityExists;
if(testIntent.resolveActivity(pm) != null) {
activityExists = true;
} else {
activityExists = false;
}
。
可理解的长形式
{{1}}
答案 1 :(得分:1)
检查testIntent.resolveActivity(pm)
是否为空。如果不为null,则activityExists值为true
,否则为false
。
答案 2 :(得分:0)
activityExists
不是true
,则 testIntent.resolveActivity(pm)
会变为null
。
答案 3 :(得分:0)
当且仅当activityExists
返回的值不是true
时,才会将testIntent.resolveActivity(pm)
分配给null
。否则,activityExists
设置为false
。
答案 4 :(得分:0)
基本上它是说如果布尔值为true,则表示存在一些活动(resolveActivity方法返回的活动不为null,它存在)。例如,如果resolveActivity返回null(无)则为false,因为它确实为== null,但是如果它返回了一个有效的活动,那么它将是真的
答案 5 :(得分:0)
testIntent.resolveAvtivity(pm)
会返回一些内容。如果它不是“null”那么activityExists = true
。如果它返回null(意味着它什么都没有返回),那么activityExists = false
。
答案 6 :(得分:0)
testIntent.resolveActivity(pm) != null
被解析为布尔表达式。无论resolveActivity(pm)
返回的方法与null
进行比较。如果它相等,则返回false。如果不相等则返回true。
然后可以将此比较的结果分配给稍后在代码中使用的布尔值。除非必须,否则您不希望每次都进行比较。