0

你能解释一下这个任务吗?这是什么意思?

boolean activityExists = testIntent.resolveActivity(pm) != null;
4

7 回答 7

10

这意味着true如果testIntent.resolveActivity(pm)不返回则分配,null否则分配false

可以理解的长形式是

boolean activityExists;
if(testIntent.resolveActivity(pm) != null) {
    activityExists = true;
} else {
    activityExists = false;
}
于 2012-08-06T19:16:45.047 回答
1

检查是否testIntent.resolveActivity(pm)为空。如果不为 null,则 activityExists 的值为true,否则为false

于 2012-08-06T19:15:29.463 回答
0

activityExiststrue恰好变成if testIntent.resolveActivity(pm)is not null

于 2012-08-06T19:15:38.557 回答
0

当且仅当返回的值is not时,它才分配activityExists给。否则,设置为。truetestIntent.resolveActivity(pm)nullactivityExistsfalse

于 2012-08-06T19:15:56.623 回答
0

基本上它是说如果那个布尔值是真的,这意味着有一些活动(从resolveActivity方法返回的活动不为空,它存在)。例如,如果resolveActivity返回null(无)它会是假的,因为它确实== null,但如果它返回一个有效的活动,非空,它会是真的

于 2012-08-06T19:16:04.930 回答
0

testIntent.resolveAvtivity(pm)会返回一些东西。如果它不是“null”,那么activityExists = true. 如果它返回 null(意味着它什么也不返回),那么activityExists = false.

于 2012-08-06T19:16:56.060 回答
0

testIntent.resolveActivity(pm) != null解析为布尔表达式。无论方法resolveActivity(pm)返回什么,都会与null. 如果相等,则返回 false。如果不相等,则返回 true。

然后可以将此比较的结果分配给一个布尔值,以便稍后在代码中使用。您不想每次都进行比较,除非您必须这样做。

于 2012-08-06T19:20:25.733 回答