Welcome everyone

Kotlin基础语法学习

Kotlin 汪明鑫 540浏览 0评论

Why  Kotlin?

简洁(减少模版代码)

安全(规避npe问题)

互操作性(和Java相互调用)

工具友好

 

 

编程语言的语法都差不多,我们直接上代码看2个简单的例子,来感受下kotlin和Java的不同

 

【Demo1】

package pers.wmx.springbootfreemarkerdemo.kotlin


fun main(args:Array<String>){
    // ---string---
    var str1 = "xinye"
    var str2 = 666

    var str = "str1 = $str1, str2 = $str2"
    println(str)

    // ---list---
    var mylist:List<Int> = arrayListOf(1, 2, 3)
    println("mylist.get(1) =  ${mylist[1]}")

    // ---map---
    var mymap:Map<String, Int> = mapOf("xinye" to 10, "shuaiqi" to 20)
    println("mymap.get(xinye) =  ${mymap["xinye"]}");
}

 

输出:

str1 = xinye, str2 = 666
mylist.get(1) = 2
mymap.get(xinye) = 10

 

【Demo2】

package pers.wmx.springbootfreemarkerdemo.kotlin

class User(var userId:Long,
           var userName:String,
           var userSex:Int = 0, //默认值
           var avatar:String?)  //允许为空

fun main(args:Array<String>){
    var user = User(userId = 123, userName = "xinye", avatar = null)
    user.userName = "wmx"
    user.userSex = 1

    //是不是很爽,和Java相比,代码量减少很多
    println("userId = ${user.userId}, userName = ${user.userName}, " +
            "userSex = ${user.userSex}, avatar = ${user.avatar?:"noAvatar"}")

 }

 

输出:

userId = 123, userName = wmx, userSex = 1, avatar = noAvatar

 

 

定义变量直接var

拼接字符串也非常方便,不用 “xxx” + “xxx”   ,底层的实现是StringBuilder

集合的使用也轻巧很多

类的定义和变量的使用更是简单灵活很多,我们连getter/setter和构造器方法都不写

var userSex:Int = 0 给个默认值0

var avatar:String?  ?表示可以为空

当然还有其他很多的语法糖、工具类

 

 

 

转载请注明:汪明鑫的个人博客 » Kotlin基础语法学习

喜欢 (0)

说点什么

您将是第一位评论人!

提醒
avatar
wpDiscuz