常量与变量
const val FINAL_VALUE: String = "我不可修改"
var helloWorld: String = FINAL_VALUE
//可以不用写类型,编译器会识别出来
val FINAL_MARIO = "马里奥"
fun main(args: Array<String>) {
println(helloWorld)
helloWorld = FINAL_MARIO
println(helloWorld)
}
函数
fun sum(arg1: Int, arg2: Int) = arg1 + arg2
fun check(args: Array<String>) {
if (args.size < 2) {
println("参数至少为2个")
// System.exit(0)
System.exit(-1) //255
}
}
fun main(args: Array<String>) {
check(args)
val i = args[0].toInt()
val j = args[1].toInt()
println("$i + $j = ${
sum(i, j)}")
}
匿名函数
把匿名函数赋值给变量
val int2Long = fun (i: Int) = i.toLong()
fun main(args: Array<String>) {
println(int2Long(3))
}
没有返回值 Unit 相当于java的 void
**
Lambda表达式
**
val sum = {
arg1: Int, arg2: Int ->
println("您输入的数字分别是 $arg1 和 $arg2")
arg1 + arg2 //最后一行 即 返回值
} //(Int,Int) -> Int
fun printUsage() {
println("用户手册") //println类型(Any?)-> Unit
}//有名函数也有类型 ()->Unit
val int2Long = fun (i: Int) = i.toLong() //匿名函数类型(Int) -> Long lambda表达式类型是Int
val sum = {
arg1: Int, arg2: Int ->
println("您输入的数字分别是 $arg1 和 $arg2")
arg1 + arg2 //最后一行 即 返回值
} //(Int,Int) -> Int
fun main(args: Array