实例
package com.test.kotlin.types.eg
/**
* input: 3 * 4
*/
// Kotlin 1.3 版本之后,如果不需要maind的参数,可以省略掉
fun main(vararg args: String) {
// 参数的个数不能小于3
if (args.size < 3) {
return showHelp()
}
// 定义一个集合来存储支持那些运算
val operators = mapOf(
"+" to ::plus,
"-" to ::minus,
"*" to ::times,
"/" to ::div
)
// 判断输入参数
val op = args[1]
// 操作可能为nul
val opFunc = operators[op]?:return showHelp()
// // 如果传的参数不是Int, 是3.5 或者 其他无效数据
try {
// 打印args, 并且用" "分割
println("Input:${args.joinToString(" ")} ")
// 如果传的参数不是Int, 是3.5 或者 其他数据
println("Output:${opFunc(args[0].toInt(), args[2].toInt())}")
} catch (e: Exception) {
println("Invalid Arguments.")
showHelp()
}
}
fun div(arg0: Int, arg1: Int) {
return arg0 / arg1
}
fun times(arg0: Int, arg1: Int) {
return arg0 * arg1
}
fun minus(arg0: Int, arg1: Int) {
return arg1 - arg1
}
fun plus(arg0: Int, arg1: Int) {
return arg0 + arg1
}
fun showHelp() {
println("""
Simple Calculator:
Input: 3 * 4
Output: 12
""".trimIndent()
)
}