人机交互
我们从键盘输入两个数字,然后打印它们的和
首先先得到从键盘输入的字符串
println("请输入第一个数字")
var num1Str = readLine()
println("请输入第二个数字")
var num2Str = readLine()
然后转数字
我们发现报错了,因为num1Str和num2Str都有可能为空,所以我们加上一个?
var num1 = num1Str?.toInt()
var num2 = num2Str?.toInt()
然后打印和
我们发现又报错了,因为num1 和 num2都有可能为空,null是不能相加的
所以我们修改之前的代码
var num1 = num1Str!!.toInt()
var num2 = num2Str!!.toInt()
来解释下?
和!!
的区别
?
意思是这个参数,可以为空并且程序继续运行下去
!!
的意思是这个参数如果为空,就抛出异常
看下结果
异常处理
刚才展示的是用户输入正常的情况下代码执行情况,如果用户输入的不是数字会出现以下情况
这就需要我们做异常处理了
try{
//之前的代码
}catch(e:Exception){
println("请输入数字哦")
}