tipsy
private fun changeListener(obj: Any) { fun getObjectString(): String { val baos = ByteArrayOutputStream() ObjectOutputStream(baos).also { it.writeObject(obj) }.also { it.close() } return baos.toString() } var oldValue = getObjectString() Thread { while (true) { val newValue = getObjectString() if (oldValue != newValue) { println("Change detected") oldValue = newValue } Thread.sleep(250) } }.start() }
furkan.akdemir
Delegates.observable()
var name: String by Delegates.observable(_name) { _, oldName, newName -> println("Changed from $oldName to $newName") _name = newName }
MyObject myObject = ...
myObject
Dominaezzz
ObjectOutputStream(baos).also { it.writeObject(obj) }.also { it.close() }
ObjectOutputStream(baos).use { it.writeObject(obj) }
A modern programming language that makes developers happier.