この課題について説明していただけますか?どういう意味ですか?
boolean activityExists = testIntent.resolveActivity(pm) != null;
が返されないtrue
場合は割り当てることを意味し、そうでない場合は割り当てます。testIntent.resolveActivity(pm)
null
false
これの理解できる長い形式は
boolean activityExists;
if(testIntent.resolveActivity(pm) != null) {
activityExists = true;
} else {
activityExists = false;
}
testIntent.resolveActivity(pm)
nullかどうかをチェックします。nullでない場合、activityExistsの値はになります。true
それ以外の場合はfalse
。
activityExists
そうでないtrue
場合は正確になります。testIntent.resolveActivity(pm)
null
によって返される値が。でない場合にのみ割り当てactivityExists
られます。それ以外の場合は、に設定されます。true
testIntent.resolveActivity(pm)
null
activityExists
false
基本的に、そのブール値がtrueの場合、何らかのアクティビティがあることを意味します(resolveActivityメソッドから返されるアクティビティはnullではなく、存在します)。たとえば、resolveActivityがnull(nothing)を返した場合、== nullのようにfalseになりますが、null以外の有効なアクティビティを返した場合、trueになります。
testIntent.resolveAvtivity(pm)
何かを返します。「null」でない場合は、activityExists = true
。nullを返す(何も返さないことを意味する)場合は、activityExists = false
。
testIntent.resolveActivity(pm) != null
ブール式に解決されます。メソッドresolveActivity(pm)
が返すものはすべて、と比較されnull
ます。等しい場合は、falseを返します。等しくない場合は、trueを返します。
この比較の結果は、後でコードで使用するブール値に割り当てることができます。必要がない限り、毎回比較する必要はありません。