第四节 控制台输入、自定义函数、字符串模板、if语句

1、从控制台输入数据


fun main(args: Array<String>) {

   //输出数据
    var a=10
    println(a)

    //计算m+n
    var m:Int
    var n:Int
    //从控制台输入m和n
    m= readLine()?.toInt()?:-1
    n= readLine()?.toInt()?:-1
    println("m+n=" + (m + n))

}

输出:


image.png

2、自定义函数


fun main(args: Array<String>) {

}
//无参数无返回值
fun sayHello()
{
    println("hello")
}
//有参数无返回值
fun sayHello(str:String)
{
    println("hello" + str)
}
//有参数有返回值
fun getLength(str:String):Int{
    return str.length
}
//无参数有返回值
fun get():String{
    return "hello"
}

3、顶层函数和嵌套函数


//main是顶层函数
fun main(args: Array<String>) {
    //sayHello是嵌套函数
    fun sayHello()
    {
        println("hello")
    }
    sayHello()
    println(getLength("hello"))
}

//getLength是顶层函数
fun getLength(str:String):Int{
    return str.length
}

image.png

4、字符串模板


fun main(args: Array<String>) {

    //今天天气晴朗,万里无云,我们去四川游玩,首先引入眼帘的是四川两个鎏金大字
    //今天天气晴朗,万里无云,我们去北京游玩,首先引入眼帘的是北京两个鎏金大字
    //今天天气晴朗,万里无云,我们去河北游玩,首先引入眼帘的是河北两个鎏金大字

    //这三句话中只有地名是不相同的,其余的都相同
    println(createDiary("四川"))
    println(createDiary("北京"))
    println(createDiary("河北"))

}

fun createDiary(place:String):String{
    val result="今天天气晴朗,万里无云,我们去${place}游玩,首先引入眼帘的是${place}两个鎏金大字"
    return result
}


输出:


image.png

5、if语句
kotlin中if语句有返回值,java中的没有,kotlin没有三元运算符


fun main(args: Array<String>) {


    //找a和b中的最大值
    val a=10
    val b=20
    println(max(a, b))

}

fun max(a:Int,b:Int):Int{
    //if语句有返回值
    return if(a>b){
        a
    }else{
        b
    }
}

输出:


image.png

可以简写

fun max(a:Int,b:Int):Int{
    //if语句有返回值
    return if(a>b)
        //如果只有一行,可以去掉大括号
        a
    else
        b

}

继续简写

fun max(a:Int,b:Int):Int{
    //if语句有返回值
    return if(a>b) a else b
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容