Учитывая список произвольных объектов
input = listOf(a, b, c, a)
... есть ли функция (с одним аргументом, не относящимся к коллекции) в стандартной библиотеке Kotlin, которую я могу использовать, чтобы сделать копию этого список, удаляющий все экземпляры ОДНОГО объекта?
Что-то вроде:
val filtered = input.removeAllInstancesOf(a)
Чтобы прояснить, я знаю о других (потенциальных) решениях этой задачи:
- Использование функции фильтра для выполнения это. →
val output = input.filterNot { it == a }
- Использование функции минус с коллекцией →
val output = input.minus(listOf(a))
- Использование функции минус с аргументом, не связанным с коллекцией →
val output = input.minus(a)
← Удаляет только первый экземпляр! - Удаление всех экземпляров из изменяемого списка.
- Написание такой функции. → Оберните все вышеперечисленное.
... но мне интересно, почему я не могу найти функцию, которая принимает только ОДНО значение, не относящееся к коллекции.