728x90
in 을 사용하다 보면 평소에 생각하지 않고 외운것 처럼 자연스럽게 사용 하다가도,가끔 헷갈릴 때가 있다. in 앞에 조건이 뒤 조건에 포함 되어있는건지 in 뒤에 조건이 앞에 조건에 포함되어 있는건지 그래서 기억하기 쉽게 정리를 해본다.
결론부터 얘기 하면, in 앞의 조건이 in (Range) 안에 있으면 true 아니면 false
fun main() {
var numList = listOf(1, 2, 3, 4, 5)
var numList2 = listOf(1, 3, 5, 7, 9)
if (3 in numList) {
println("3은 numList 컬렉션에 포함되어 있습니다.")
} else {
println("3은 numList 컬렉션에 포함되어 있지 않습니다.")
}
//3은 numList 컬렉션에 포함되어 있습니다.
val x = 5
if (x in 1..10) {
println("$x 는 1과 10 사이에 있습니다.")
} else {
println("$x 는 1과 10 사이에 없습니다.")
}
//5 는 1과 10 사이에 있습니다.
println("filter -> 0과 6사이에 있는 numList2 ${numList2.filter { it in (0..6) }}")
//filter -> 0과 6사이에 있는 numList2 [1, 3, 5]
println("filter -> 0과 6사이에 없는 numList2 ${numList2.filter { it !in (0..6) }}")
//filter -> 0과 6사이에 없는 numList2 [7, 9]
val string = "abcdefg"
val string2 = "abc"
if(string2 in string){
println("$string2 는 $string 안에 포함 됩니다.")
}else{
println("$string2 는 $string 안에 포함 되지 않습니다.")
}
//abc 는 abcdefg 안에 포함 됩니다.
}