Multiple distinct objects: Difference between revisions

Content added Content deleted
(Added Kotlin)
Line 668: Line 668:


Array("object"; 4)</lang>
Array("object"; 4)</lang>

=={{header|Kotlin}}==
<lang scala>// version 1.1.1

class Foo {
val id: Int

init {
id = ++numCreated // creates a distict id for each object
}
companion object {
private var numCreated = 0
}
}

fun main(args: Array<String>) {
val n = 3 // say

/* correct approach - creates references to distinct objects */
val fooList = List(n) { Foo() }
for (foo in fooList) println(foo.id)

/* incorrect approach - creates references to same object */
val f = Foo()
val fooList2 = List(n) { f }
for (foo in fooList2) println(foo.id)
}</lang>

{{out}}
<pre>
1
2
3
4
4
4
</pre>


=={{header|Logtalk}}==
=={{header|Logtalk}}==