이 문서에서는 Kotlin의 목록에서 null, 빈 값, 빈 값을 제거하는 다양한 방법을 살펴봅니다.
1. 필터 사용
간단한 솔루션은 필터를 사용하여 Kotlin의 목록에서 null, 비어 있는 값 및 공백 값을 제거하는 것입니다. 그만큼 filter() 함수는 지정된 술어와 일치하는 요소를 유지하고, filterNot() 함수는 지정된 술어와 일치하는 요소를 제거합니다.
목록에서 null 값만 제거하려면 다음 중 하나를 사용할 수 있습니다. filterNotNull() 기능 또는 mapNotNull() 기능, 아래와 같이:
fun main() {
val input = listOf("A", "B", null, "", "C", "D", null, "", "E", " ")
// 각 println 문은 [A, B, , C, D, , E, ]를 출력합니다.
println(input.filter { it != null })
println(input.filterNotNull())
println(input.mapNotNull { it })
}
목록에서 null 값과 빈 값을 모두 제거하려면 다음을 사용하는 것이 좋습니다. filterNot() 기능 isNullOrEmpty() 기능. 아래와 같이 목록에서 null 및 빈 값을 제거하는 데 사용할 수 있는 몇 가지 다른 옵션이 있습니다.
fun main() {
val input = listOf("A", "B", null, "", "C", "D", null, "", "E", " ")
// 각 println 문은 [A, B, C, D, E, ]를 출력합니다.
println(input.filter { it != null && it.isNotEmpty() })
println(input.filterNotNull().filterNot { it.isEmpty() })
println(input.filterNotNull().filter { it.isNotEmpty() })
println(input.filterNot { it.isNullOrEmpty() })
}
목록에서 null, 공백 및 공백 값을 제거하려면 다음을 사용할 수 있습니다. filterNot() 기능 isNullOrBlank() 기능. 다음 코드는 몇 가지 다른 옵션과 함께 사용법을 보여줍니다.
fun main() {
val input = listOf("A", "B", null, "", "C", "D", null, "", "E", " ")
// 각 println 문은 [A, B, C, D, E]를 출력합니다.
println(input.filter { it != null && !it.isBlank() })
println(input.filterNotNull().filterNot { it.isBlank() })
println(input.filterNotNull().filter { it.isNotBlank() })
println(input.filterNot { it.isNullOrBlank() })
}
2. 사용 removeIf() 기능
위의 솔루션은 원본 목록의 복사본을 만듭니다. 다음을 사용하여 원래 목록에서 null, 빈 및 빈 값을 제자리에서 제거할 수 있습니다. removeIf() 기능. 다음 코드 예제는 일반적인 호출을 보여줍니다. removeIf() 지정된 술어를 충족하는 모든 요소를 제거하는 함수입니다.
fun main() {
val input: MutableList<String?> = mutableListOf(
"A", "B", null, "", "C", "D", null, "", "E", " "
)
// null 값 제거
input.removeIf { it == null }
println(input) // [A, B, , C, D, , E, ]
// 빈 값 제거
input.removeIf { it!!.isEmpty() }
println(input) // [A, B, C, D, E, ]
// 빈 값 제거
input.removeIf { it!!.isBlank() }
println(input) // [A, B, C, D, E]
}
결과:
[A, B, , C, D, , E, ]
[A, B, C, D, E, ]
[A, B, C, D, E]
'android' 카테고리의 다른 글
안드로이드 리스트뷰에 버튼 넣기. (Android ListView with Button) (0) | 2024.10.10 |
---|---|
Java에서는 문자열 목록에서 빈 요소를 제거 (0) | 2024.10.10 |
[JAVA] Java의 String Empty 와 Blank 체크하기 (0) | 2024.10.10 |
ExpandableList에서 버튼을 클릭할 수 없습니다. (0) | 2024.10.10 |
[구글플레이 개발자 콘솔] 앱 검토에 로그인 사용자 인증 정보 입력 (0) | 2024.10.10 |