本文是学习Kotlin的包相关,控制流相关以及返回与跳转相关,与Java比较大的区别是Kotlin用when
来替换掉Java的switch
,写好简单,可以有各种类型值的判断,另外可以指定返回和跳转到指定标签的位置。
包(Package)
与Java一样,Kotlin的源文件同样以包声明开始的。
package foo.bar
fun baz() {}
class Goo {}
// ...
源文件的所有内容(如类和函数)都包含在声明的包中。
所以,在上面的例子中,baz()
的全名是foo.bar.baz
,Goo
的全名是foo.bar.Goo
。
如果未指定包,则此类文件的内容属于没有名称的“default”包。
导入(Imports)
Kotlin中除了模块中默认导入的包,每个文件都可以被导入。
如导入一个包里面的类文件
import foo.Bar // 导入foo包里面的Bar
如导入一个包里面的所有内容(包,类,对象,等等)
import foo.* // foo中的所有都可以使用
如果命名有冲突,可以用as
关键字来重命名解决冲突
import foo.Bar // Bar可以使用
import bar.Bar as bBar // bar.Bar可以直接用bBar表示
与Java不同,Kotlin没有单独的“import static”语法;
所有这些声明都使用常规import关键字导入。
控制流(Control Flow)
Kotlin的控制流有if``when``for``while
四种。
if
表达式
在Kotlin中,if
表达式表示返回一个值(true或false),Kotlin中没有三目运算符。
//传统用法
var max = a
if (a < b)
max = b
//带 else
var max: Int
if</