karelpeeters
09/27/2018, 5:25 PMdata class Foo(var x: Int)
fun main(args: Array<String>) {
val f = Foo(3)
val s = mutableSetOf(f)
f.x = 7
println(s == setOf(Foo(7)))
} on try.kotlinlang.org.Andreas Sinz
09/27/2018, 5:27 PMSet != MutableSetAndreas Sinz
09/27/2018, 5:28 PMSet, but not with MutableSet 🤔pavel
09/27/2018, 5:33 PMSet on JVM but not on JavaScript 🙃karelpeeters
09/27/2018, 5:35 PMHashSet behind the scenes?pavel
09/27/2018, 5:35 PMpavel
09/27/2018, 5:35 PMpublic fun <T> setOf(element: T): Set<T> = java.util.Collections.singleton(element)pavel
09/27/2018, 5:36 PMpublic fun <T> mutableSetOf(vararg elements: T): MutableSet<T> = elements.toCollection(LinkedHashSet(mapCapacity(elements.size)))karelpeeters
09/27/2018, 5:37 PMpavel
09/27/2018, 5:37 PMkarelpeeters
09/27/2018, 5:37 PMpavel
09/27/2018, 5:40 PMdata class Foo(var x: Int)
fun main(args: Array<String>) {
val f = Foo(3)
val g = Foo(4)
val s = setOf(f,g)
f.x = 7
println(s == setOf(Foo(7), Foo(4)))
}pavel
09/27/2018, 5:40 PMpavel
09/27/2018, 5:41 PMDico
09/27/2018, 5:41 PMDico
09/27/2018, 5:43 PMcontains check breaks completely.Dico
09/27/2018, 5:43 PMpavel
09/27/2018, 5:44 PMpublic fun <T> setOf(element: T): Set<T> = java.util.Collections.singleton(element)Dico
09/27/2018, 5:44 PMpavel
09/27/2018, 5:44 PMDico
09/27/2018, 5:45 PMsingleton method name always annoys me