Using ranges implement a function that checks whether the date is in the range between the first date and the last date (inclusive).
You can build a range of any comparable elements. In Kotlin in checks are translated to the corresponding contains calls and .. to rangeTo calls:
val list = listOf("a", "b")
"a" in list // list.contains("a")
"a" !in list // !list.contains("a")
date1..date2 // date1.rangeTo(date2)
fun checkInRange(date: MyDate, first: MyDate, last: MyDate): Boolean {
return TODO()
}
fun checkInRange(date: MyDate, first: MyDate, last: MyDate): Boolean {
return date in first..last
}
특정 날짜가 주어진 날짜 범위 안에 있는지 확인하는 함수를 구현하는 문제이다.
범위 …
와 in
연산자를 사용하여 구현이 가능하다.
...
연산자a..b
는 a.rangeTo(b)
로 변환된다.rangeTo
함수는 범위를 생성하는 데 사용되며, 범위 끝 값까지 포함한다.in
연산자x in a..b
는 a <= x && x <= b
로 변환된다.x !in a..b
는 x < a || x > b
로 변환된다.date in first..last
표현식을 사용하여 date
가 first
와 last
사이에 있는지 검사할 수 있다.