Kotlin笔记|Kotlin笔记 基础语法
1.Package
同Java一样,定义package
package my.demo
import java.util.*
源文件里所有的内容都在文件头定义的包里,如果文件头没有定义包,那么所有内容属于没有名字的“default” package
package foo.barfun baz() {}class Goo {}
baz
的全名叫foo.bar.baz()
, Goo
的全名为foo.bar.Goo
2.Import 同Java的语法类似,import 可以带上as取别名
import bar.Bar as bBar
import
除了可以引用类,还可以引用- top level function和properties,
- 单例的方法 和属性
- 枚举常量
3.定义函数
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): Unit {
print(a + b)
}
或者
fun printSum(a: Int, b: Int) {
print(a + b)
}
4.定义局部变量 只读变量为
val
修饰,只能被赋值一次,可读可写变量用var
修饰,不写type的变量必须被初始化:val a: Int = 1
val b = 1 // `Int` type is inferred
val c: Int // Type required when no initializer is provided
c = 1 // definite assignment
5.String template
fun main(args: Array) {
if (args.size == 0) return
print("First argument: ${args[0]}")
}
6. 如果一个引用有可能为null,需要在type后加个?,比如以下函数就有可能返回null
fun parseInt(str: String): Int? {
// ...
}
7其他 for-loop
fun main(args: Array) {
for (arg in args) {
print(arg)
}
}//或者遍历indexfor (i in args.indices) {
print(args[i])
}
while-loop
fun main(args: Array) {
var i = 0
while (i < args.size) {
print(args[i++])
}
}
range
if (x in 1..y-1) {
print("OK")
}
【Kotlin笔记|Kotlin笔记 基础语法】in可以遍历collection,也可以检查元素是否在collection里
for (name in names) {
println(name)
}if (text in names) { // names.contains(text) is called
print("Yes")
}
推荐阅读
- EffectiveObjective-C2.0|EffectiveObjective-C2.0 笔记 - 第二部分
- Android中的AES加密-下
- 【读书笔记】贝叶斯原理
- 【韩语学习】(韩语随堂笔记整理)
- Python基础|Python基础 - 练习1
- 人性的弱点-笔记
- 读书笔记:博登海默法理学|读书笔记:博登海默法理学 —— 正义的探索(1)
- D034+3组苏曼+《写作这回事》读书笔记
- 《自我的追寻》读书笔记3
- 最有效的时间管理工具(赢效率手册和总结笔记)