Size: a a a

Clojure — русскоговорящее сообщество

2020 March 11

T

Timmy B in Clojure — русскоговорящее сообщество
ну я конечно трошки иронизирую, просто as прям описан как unsafe
источник

(

( in Clojure — русскоговорящее сообщество
окей
источник

(

( in Clojure — русскоговорящее сообщество
val a: List<Int> = listOf(1)
if (a is MutableList) {
 a.add(3)
}

Упадёт ли этот код?
источник

T

Timmy B in Clojure — русскоговорящее сообщество
надеюсь что нет :D
источник

(

( in Clojure — русскоговорящее сообщество
ответ - упадёт
источник

T

Timmy B in Clojure — русскоговорящее сообщество
возможно is каким-то хером найдёт общего предка в иерархии
источник

T

Timmy B in Clojure — русскоговорящее сообщество
и таки разрешит каст
источник

T

Timmy B in Clojure — русскоговорящее сообщество
эх, а с виду ведь казался хорошим языком :(
источник

T

Timmy B in Clojure — русскоговорящее сообщество
public interface MutableList<E> : List<E>, MutableCollection<E> {...}


эммммммммм
источник

T

Timmy B in Clojure — русскоговорящее сообщество
/me фрустрирован
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
(
ответ - упадёт
с какой ошибкой?
источник

(

( in Clojure — русскоговорящее сообщество
Sergey Trofimov
с какой ошибкой?
UnsupportedOperationException
источник

(

( in Clojure — русскоговорящее сообщество
потому что в синглтонлист нельзя добавлять элементы
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
(
потому что в синглтонлист нельзя добавлять элементы
а почему он тогда as MutableList?
источник

(

( in Clojure — русскоговорящее сообщество
Sergey Trofimov
а почему он тогда as MutableList?
Потому что он джавовый, а в джаве он мутабельный
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
но List же не является потомком MutableList?

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/#inheritors
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
странно конечно
в скале такого безобразия не было 😊
источник

(

( in Clojure — русскоговорящее сообщество
MutableList является потомком List
источник

T

Timmy B in Clojure — русскоговорящее сообщество
меня вообще убивает зоопарк коллекций и методов их организации, ну и неровные отношения между ними
Iterator, Iterable, Sequence, Collection, List, MutableList, сбоку Array и MutableArray
источник

T

Timmy B in Clojure — русскоговорящее сообщество
система типов, раз уж она есть, должна как-то помогать чили шоли
источник