TYPO 용으로 편집 됨 -연속적인 'if'문
첫 번째 사실이 무엇인지 어떻게 확인하나요?
예를 들어 쇼핑 바구니 개체가 있고 바구니가 만들어져 있고 비어 있지 않은 경우에만 작업을 수행하려고한다고 가정합니다.
if ((basket) && ([basket numberOfItems] >0))...
그러나 두 번째 조건은 첫 번째는 (내가 존재하지 않는 개체에 numberOfItems를 호출하고있어 아마도 때문에) 충돌의 결과로 실패하는 경우에도 평가 :
은 내가 시도했습니다.
나는 그들을 중첩시킬 수 있지만 이것은 약간 추한 것처럼 보입니다. 더 중요한 것은 문제가되는 것입니다. 바구니가 존재하고 비어 있지 않다면 한 가지 일을하고 싶다고 말하면됩니다. 중첩 된 if 문에서는 그다지 잘 작동하지 않습니다.
nil에 메시지를 부르는 것은 아무런 일이 아닙니다. 뭔가 다른 문제가 있습니다 – cobbal
그리고 첫 번째 실패한 경우 두 번째 *는 평가되지 않습니다 –