您的位置:首页 > 其它

Kotlin基本语法

2017-06-10 12:29 330 查看

Kotlin的前世今生

甲骨文因java侵权起诉谷歌,老大哥谷歌怎会受得了这窝囊气,于是谷歌就想必须得有自己的开发语言,于是在今年的谷歌大会上,谷歌宣布,将Kotlin语言作为安卓开发的一级编程语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。谷歌称还将与JetBrains公司合作,为Kotlin设立一个非盈利基金会。这一次人们坐不住了啊,谷歌爸爸有自己官方语言,未来的kotlin会不会成为主流,我们是不是应该学习kotlin呢?Kotlin是一门与Swift类似的静态类型JVM语言,由JetBrains设计开发并开源。与Java相比,Kotlin的语法更简洁、更具表达性,而且提供了更多的特性,比如,高阶函数、操作符重载、字符串模板。它与Java高度可互操作,可以同时用在一个项目中。

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

定义局部变量赋值一次局部变量<span style="color:rgb(204,51,204); background-color:rgb(255,255,255)">fun main(args: Array<String>){      val a: Int = 1       val b = 2        val c: Int       c = 3         println("a = $a, b = $b, c = $c")  }</span> 可变的变量<span style="font-size:14px;color:rgb(204,51,204); background-color:rgb(255,255,255)">fun main(args: Array<String>){      var x = 5       x += 1      println("x = $x")  }</span> 定义函数使用fun关键字funsum (a : Int, b : Int) : Int {    return a*b;}函数add有两个Int型的参数,冒号后跟的是函数的返回值,一条代码语句的末尾不用加分号注释<spanstyle="background-color:rgb(255,255,255)"><span style="color:rgb(204,51,204)">像 Java 和 JavaScript 一样,Kotlin 支持行注释和块注释。  // 这是行注释  /*这是  块注释 */</span><span style="color:rgb(255,255,255)"><span style="font-family:Arial"><span style="font-size:14px; line-height:26px"></span></span></span></span> 和 Java 不同的是,Kotlin块注释可以嵌套使用条件表达式<spanstyle="color:rgb(204,51,204)"><span style="background-color:rgb(255,255,255)">fun maxOf(a: Int, b: Int): Int {      if (a > b) {      return a      } else {      return b      }  } funmain(args: Array<String>) {     println("max of 0 and 42 is ${maxOf(0, 42)}")  }</span></span>使用for 循环 <spanstyle="color:rgb(204,51,204); background-color:rgb(255,255,255)">fun main(args: Array<String>) {      val items = listOf("apple", "banana", "kiwi")      for (item in items)     {      println(item)      }  }</span>   

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字符串拼接变得非常简洁,只需用$后面加上参数名,复杂的参数要加上{}val user = User()user.name = "tutu"user.age = "23"val name = user.nameval age = user.agevar userInfo = "name:${user.name},  age:$ageranges的使用捡查索引是否越界fun checkIndex(index: Int, arr: Array<Int>) {     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内部类

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: