Description
In Kotlin
inchecks are translated to the correspondingcontainscalls:
Kotlinでは、
inはcontainsの呼び出しに該当します。
val list = listOf("a", "b")
"a" in list // list.contains("a")
"a" !in list // !list.contains("a")
Read about ranges. Add a method
fun contains(d: MyDate)to the classDateRangeto allow in checks with a range of dates.
range(範囲) を読んでください。
DateRangeクラスにfun contains(d: MyDate)メソッドを追加して、inで日付の範囲チェックができるように実装してください。
Code
class DateRange(val start: MyDate, val endInclusive: MyDate) {
operator fun contains(d: MyDate): Boolean = start <= d && d <= endInclusive
}
fun checkInRange(date: MyDate, first: MyDate, last: MyDate): Boolean {
return date in DateRange(first, last)
}
Memo
- 前回の演算子のオーバーロードに続いて、独自クラスの演算子のルールを実装する。