ProgramingTip

이 null 검사와 비어 있지 않은 검사를 그루비로 작성하는 더 좋은 방법이 있습니까?

bestdevel 2020. 10. 7. 07:56
반응형

이 null 검사와 비어 있지 않은 검사를 그루비로 작성하는 더 좋은 방법이 있습니까?


일부 논리를 수행하기 전에 일부 코드에서 null / 빈 검사 를 수행해야합니다 . 내가 틀렸다고 생각하기 때문에 아래 항목이 있습니다 !members?.empty.

다음을 작성하는 훌륭한 방법이 있습니까?

if (members && !members.empty) {
    // Some Work
}

실제로 Groovier Way가 있습니다.

if(members){
    //Some work
}

members컬렉션 이면 모든 작업을 수행합니다 . Null 검사 및 빈 검사 (빈 컬렉션이로 강제 됨 false). 우박 그루비 진실 . :)


!members.find()

이 문제를 해결하는 가장 좋은 방법은 위의 코드라고 생각합니다. Groovy 1.8.1 http://docs.groovy-lang.org/docs/next/html/groovy-jdk/java/util/Collection.html#find () 이후로 작동합니다 . 예 :

def lst1 = []
assert !lst1.find()

def lst2 = [null]
assert !lst2.find()

def lst3 = [null,2,null]
assert lst3.find()

def lst4 = [null,null,null]
assert !lst4.find()

def lst5 = [null, 0, 0.0, false, '', [], 42, 43]
assert lst5.find() == 42

def lst6 = null; 
assert !lst6.find()

참고 URL : https://stackoverflow.com/questions/17256855/is-there-a-better-way-to-write-this-null-check-and-a-non-empty-check-in-groovy

반응형