program story

배열이 null인지 비어 있는지 확인하는 방법은 무엇입니까?

inputbox 2021. 1. 5. 08:03
반응형

배열이 null인지 비어 있는지 확인하는 방법은 무엇입니까?


내 배열이 비어 있는지 또는 null인지 확인하고 예를 들어 조건을 만들고 싶습니다.

if(array ==  EMPTY){
//do something
}

내가 요청한 내용이 명확하기를 바랍니다. 배열이 비어 있는지 확인해야합니다.

문안 인사


if (!array || !array.count){
  ...
}

배열이 nil이 아닌지 확인하고 그렇지 않은 경우 비어 있지 않은지 확인합니다.


if ([array count] == 0)

배열이 nil이면 nil도 0에 매핑되므로 0도됩니다. 따라서 배열이 존재하는지 여부를 확인할 필요가 없습니다.

또한 일부 제안 된대로 array.count를 사용하면 안됩니다. 그것은 작동 할 수 있지만 속성이 아니며 속성과 메서드의 차이점을 알고 있다면 코드 너트를 읽는 사람을 유도합니다.

업데이트 : 예, 몇 년 후 카운트가 이제 공식적으로 재산이라는 것을 알고 있습니다.


당신은 이렇게 시도 할 수 있습니다

if ([array count] == 0)

정말 장황하게 :)

if (array == nil || array.count == 0)

최고의 성능.

if (array.firstObject == nil)
{
    // The array is empty
}

큰 배열을 사용하는 방법.


if (array == (id)[NSNull null] || [array count] == 0) {
    NSLog(@"array is empty");
}

nil이 0에 매핑되기 때문에 NO, 가장 우아한 방법은 다음과 같습니다.

if (![array count])

'=='연산자는 필요하지 않습니다.


if (nrow> 0)을 사용하여 이러한 종류의 테스트를 수행 할 수도 있습니다. 데이터 개체가 공식적으로 배열이 아닌 경우 더 잘 작동 할 수 있습니다.


null과 empty는 같은 것이 아닙니다. 다르게 취급하는 것이 좋습니다.

if (array == [NSNull null]) {
    NSLog(@"It's null");
} else if (array == nil || [array count] == 0) {
     NSLog(@"It's empty");
}

스위프트 3

최신 버전의 swift 3에서와 같이 옵션을> 및 <와 비교하는 기능은 사용할 수 없습니다.

선택 사항을 ==와 비교할 수 있으므로 선택 사항 배열에 값이 포함되어 있는지 확인하는 가장 좋은 방법은 다음과 같습니다.

if array?.isEmpty == false {
    print("There are objects!")
}

어레이 수에 따라

if array?.count ?? 0 > 0 {
    print("There are objects!")
}

이 다른 방법은 또한 여기에서 확인하실 수 있습니다 대답에 링크


if (array == nil || array.count == 0 || [array isEqaul [NSNull Null]])

에서 스위프트 4

if (array.isEmpty) {
    print("Array is empty")
}
else{
    print("Array is not empty")
}

참조 URL : https://stackoverflow.com/questions/3959366/how-to-check-if-array-is-null-or-empty

반응형