Kotlin(3)基本语法

包定义与导入包

1 kotlin.*

2 kotlin.annotation.* 注解类

3 kotlin.collections.* 集合操作的类,有list、set、map

4 kotlin.comparisons.* 元素比较的包

5 kotlin.io.*

6 kotlin.ranges.* 区间表达包

7 kotlin.sequences.* 序列的包,元素非常多的情况下速度更快

8 kotlin.text.* 文本和正则表达式的包

入口程序

Kotlin程序的入口是main函数

fun main(){

println("Hello world!")

}

main的另一种形式接受可变数量的String参数

fun main(args: Array<String>){

println(args.contentToString())

}

"<>"里是泛型,是你能传进去参数的类型

args是变量名,它是一个字符串数组

printlin里是数组类的一个方法

输出到控制台

print将其参数打到标准输出

fun main(){

//不换行输出

print("Hello ")

print("world!")

//换行输出

println("Hello world!")

println(42)

}

函数

定义函数的语法

fun 函数名(参数:类型):返回类型{

//函数体

}

举例

fun sum(a: Int, b: Int) : Int {

return a+b

}

表达式作为函数体,返回类型自动推断

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

//public方法则必须明确写出返回类型

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

返回无意义的值的函数

fun printSum(a: Int,b: Int): Unit{

println("sum of a and b is ${a + b}")}

变量

定义只读局部变量使用关键字val定义。只能为其赋值一次。

val a: Int = 1 //立即赋值

val b = 2 //自动推断出"Int"类型

val c: Int //如果没有初始值,类型不能省略

c=3 //明确赋值

println("a = a, b = b, c = $c")

可重新赋值的变量使用var关键字

var x = 5 //自动推断出"Int"类型

x += 1

可在函数外部声明变量,是全局变量

val PI = 3.14

var x = 0

fun main(){

println("x = x ; PI = PI")

}

Kotlin中的数字没有隐式拓宽转换

fun main(){

val i = 1 //int

val d = 1.0 //double

val f = 1.0f //float

printDouble(d)

printDouble(i) //错误:类型不匹配

printDouble(f) //错误:类型不匹配

}

fun printDouble(d:Double) { print(d) }

可以用下划线分割数字,使得更易于读取

val oneMillion = 1_000_000

trimMargin()去掉分节符"|"

数组

用Array类创建数组

控制流程

条件语句

循环语句

流程控制语句

相关推荐
如此风景6 小时前
Kotlin Flow操作符学习
android·kotlin
plainGeekDev7 小时前
GreenDAO → Room
android·java·kotlin
plainGeekDev13 小时前
ButterKnife → ViewBinding
android·java·kotlin
Kapaseker2 天前
一文吃透 Kotlin 集合操作符
android·kotlin
plainGeekDev2 天前
Activity 间传值 → Navigation 参数
android·java·kotlin
plainGeekDev2 天前
onActivityResult → ActivityResult API
android·java·kotlin
alexhilton3 天前
Android车载OS中的Remote Compose
android·kotlin·android jetpack
plainGeekDev3 天前
广播接收器 → Flow + Lifecycle
android·java·kotlin
plainGeekDev3 天前
EventBus → SharedFlow
android·java·kotlin
Kapaseker5 天前
学不动了,入门 Compose Styles API
android·kotlin