Kotlin基本语法

来源:互联网 发布:程序员办公室图 编辑:程序博客网 时间:2024/06/04 03:53

Kotlin的前世今生
甲骨文因java侵权起诉谷歌,老大哥谷歌怎会受得了这窝囊气,于是谷歌就想必须得有自己的开发语言,于是在今年的谷歌大会上,谷歌宣布,将Kotlin语言作为安卓开发的一级编程语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。谷歌称还将与JetBrains公司合作,为Kotlin设立一个非盈利基金会。这一次人们坐不住了啊,谷歌爸爸有自己官方语言,
未来的kotlin会不会成为主流,我们是不是应该学习kotlin呢?

Kotlin是一门与Swift类似的静态类型JVM语言,由JetBrains设计开发并开源。与Java相比,Kotlin的语法更简洁、更具表达性,而且提供了更多的特性,比如,高阶函数、操作符重载、字符串模板。它与Java高度可互操作,可以同时用在一个项目中。

知道了Kotlin那么就让来了解一下Kotlin的基本语法吧

定义局部变量
赋值一次局部变量
fun main(args: Array){
val a: Int = 1
val b = 2
val c: Int
c = 3
println(“a = a,b=b, c = $c”)
}

可变的变量
fun main(args: Array){
var x = 5
x += 1
println(“x = $x”)
}

定义函数使用fun关键字
fun sum (a : Int, b : Int) : Int {
return a*b;
}
函数add有两个Int型的参数,冒号后跟的是函数的返回值,一条代码语句的末尾不用加分号

注释

像 Java 和 JavaScript 一样,Kotlin 支持行注释和块注释。
// 这是行注释
/* 这是
块注释 */


和 Java 不同的是,Kotlin 块注释可以嵌套

使用条件表达式
fun maxOf(a: Int, b: Int): Int {
if (a > b) {
return a
} else {
return b
}
}
fun main(args: Array) {
println(“max of 0 and 42 is ${maxOf(0, 42)}”)
}

使用 for 循环
fun main(args: Array) {
val items = listOf(“apple”, “banana”, “kiwi”)
for (item in items)
{
println(item)
}
}

while循环

fun testWhile() {
var i = 0;
while(i < 10) {
print(” ” + i)
i++
}
}

when表达式
fun cases(obj : Any){
when(obj) {
1 -> print(“One”)
“Hello” -> print(“Greeting”)
is Long -> print(“Long”)
!is String -> print(“Not a string”)
else -> print(“Unknown”)
}
}

字符串模板
在Java中拼接字符串的代码可读性都很差,在Kotlin字符串拼接变得非常简洁,只需用valuser=User(user.name=tutuuser.age=23valname=user.namevalage=user.agevaruserInfo=name:{user.name}, age:$age
ranges的使用
捡查索引是否越界
fun checkIndex(index: Int, arr: Array) {
if(index in 0..arr.lastIndex)
println(“index in bounds”)
else
println(“index out of bounds”)
}
遍历一个范围
for(i in 1..5) {
println(i)
}

注意事项

内部类和参数默认为public,而在Java中为private

类默认为不可继承(final),想要可被继承要声明为open或abstract

取消了static关键字,静态方法和参数统一写在companion object块

internal模块内可见,inner内部类

原创粉丝点击