examples
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
namespace HelloNamesRealistic
|
||||
|
||||
fun main(args : Array<String>) {
|
||||
val names = args.join(", ")
|
||||
println("Hello, $names!")
|
||||
}
|
||||
|
||||
fun println(message : String) {
|
||||
// System.out is a nullable field
|
||||
System.out?.println(message)
|
||||
}
|
||||
|
||||
fun <T> Iterable<T>.join(separator : String) : String? {
|
||||
val names = StringBuilder()
|
||||
forit (this) {(it: Iterator<T>): Unit =>
|
||||
names += it.next()
|
||||
if (it.hasNext())
|
||||
names += separator
|
||||
}
|
||||
return names.toString()
|
||||
}
|
||||
|
||||
fun <T> forit(col : Iterable<T>, f : fun(Iterator<T>) : Unit) {
|
||||
val it = col.iterator()
|
||||
while (it.hasNext()) {
|
||||
f(it)
|
||||
}
|
||||
}
|
||||
|
||||
fun StringBuilder.plusAssign(s : String) {
|
||||
this.append(s)
|
||||
}
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
class Point(val x: Int, val y: Int) {
|
||||
fun toString() = "($x,$y)"
|
||||
|
||||
fun distanceTo(other: Point): Double {
|
||||
val dx = x - other.x
|
||||
val dy = y - other.y
|
||||
return Math.sqrt((dx*dx + dy*dy).dbl)
|
||||
}
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
var p = Point(0, 0)
|
||||
var q = Point(1, 1)
|
||||
p.distanceTo(q)
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user