我有一个叫Class的类,它有一个叫dayOfWeek的属性.此属性属于DayOfWeek类型.
我有一个班级的列表,我想判断一周中有多少天出现在这个列表上.因此,例如,如果我有8个类,其中3个是星期五,2个是星期三,3个是星期一,这个方法应该返回3(因为这个列表上有3个不同的星期(星期一,星期三和星期五)).
是否有内置的方法,或者我应该创建?
如果我需要创建它,我做了这个:
inline fun <T, P> Iterable<T>.countUnique(block: (T) -> P): Int {
if (this is Collection && isEmpty()) return 0
var count = 0
val list: ArrayList<P> = arrayListOf()
for (element in this) {
val property = block(element)
if (list.contains(property).not()) {
list.add(property)
count++
}
}
return count
}
}