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基础语法学习
说点什么
您将是第一位评论人!