kotlin学习笔记-1-初步了解

系列文章记录kotlin的学习,完全参考官方文档http://kotlinlang.org/docs/reference/

1.包package

包名不需要与源文件目录结构完全一致

package my.demo
import java.util.*

2.函数function定义

完整形式,参数为Int类型的a和b,返回值类型为Int

fun sum(a: Int, b: Int): Int{
return a + b;
}

返回类型可以自动推导,可以简化为

fun sum(a: Int, b: Int) = a + b

如果无返回值,即为Unit类型,可以省略,如

fun printSum(a: Int, b: Int) {
    print(“sum of $a and $b is $(a + b))
}

3.本地变量local variable

完整形式

var a : Int = 1

类型可以自动推导,不初始化赋值则必须声明类型

4.注释commit

与java类似,其中/**/块注释可以嵌套使用

5.字符串模板

字符串a或者任意表达式a+b,引用方式分别为

$a
${a+b}

6.条件表达式

if (a > b) a else b

7.nullable值及判断null

Int?
if (x == null)

8.类型检查及自动类型转换

is关键字检查,类似java中的instanceOf。类型检查为true后可以自动类型转换

fun getStringLength(str: Any) :Int? {
if (str is String) {
    return str.length
}
return null
}

9.循环

for while用法与java类似,when类似于java中的switch

fun describle(obj: Any): String =
when (obj) {
    1 -> “One”
    “Hello” -> “Greeting”
    !is String -> Not s Stringelse -> “Unknown”
}

10.范围Range

用in关键字判断一个数字是否在某个范围内,前面添加!表示不在某个范围

if (i in 1..10)

范围可以使用..表示,也可以使用downTo,后面可以使用关键字step步进取数据

if (i in 10 downTo 1 step 3)

11.集合

集合的迭代

for (item in items) {
    println(item)
}

检查集合是否包含某元素

when {
“orange” in items -> println(“juicy”)
“apple” in items -> println(“apple is fine too”)
}

12.实例化类

不需要关键词new

var triangle = Triangle(3, 4, 5)

猜你喜欢

转载自blog.csdn.net/w_xue/article/details/78169810