【Android、 kotlin】kotlin学习笔记

基本语法

Kotlin 复制代码
fun main(){
    val a=2
    var b = "Hello"
    println("$ (a - 1} $b Kotlin!")

}

Variables

只赋值一次用val read-only variables with val

赋值多次用var mutable variables with var

Standard output

printin() and print() functions

String templates

Template expressions start with $

Evaluate a niece of code with {}

基本数据类型basic types

声明变量Declare Variables

val pi : Double =3.14

var p : Int

p = pi.tolnt()

需要强制类型转换Explicit number conversions

控制流control flow

if语句

Kotlin 复制代码
max = if (a > b) a else b
Kotlin 复制代码
val a = 4
val b = 5
val max : Int
if (a > b) {
	max = a
}
else {
	max = b
}
println("max = $max")

range函数

Ranges - create a range to use ..

1..4 equivalent to 1, 2, 3, 4

1..<4 equivalent to 1, 2, 3

4 downTo 1 equivalent to 4, 3, 2, 1

1..5 step 2 equivalent to 1, 3, 5

when函数

Use when when you have a conditional expression with multiple branches

Kotlin 复制代码
val temp = 20
val description = when(temp) {
    	0 -> "zero"
    	in 1..10 -> "a bit cold"
    	in 11..<20 -> "warm"
    	else -> "hot"             
}
print(description)

for循环

The for loop iterates through anything that provides an iterator.

Kotlin 复制代码
for (i in 1..3) {
    println(i)
}
for (i in array.indices) {
    println(array[i])
}
for ((index, value) in array.withIndex()) {
    println("elem at $index is $value")
}

Array

Kotlin 复制代码
val simpleArray = arrayOf(1, 2, 3)
val intArray : Array<Int> = arrayOf(4, 5, 6)
simpleArray[0] = 10
val exampleArray = IntArray(3)

Collections: List, Set, Map

函数functions

Basic function

Kotlin 复制代码
fun sum(a: Int, b: Int): Int {
    return a + b
}

Function body can be expression

只有一条表达式语句

Kotlin 复制代码
fun sum(a: Int, b: Int) = a + b

Function without return value

Kotlin 复制代码
fun printSum(a: Int, b: Int): Unit {
    println("sum of $a and $b is ${a + b}")
}

Lambda expressions

如果lambda表达式有多个语句,最后一个语句是返回值

fun main() {

var upperCaseString : (String) -> String

upperCaseString = { string: String -> string.uppercase() }

println(upperCaseString("hello"))

}

高阶函数higher-order function

A higher-order function is a function that takes functions as parameters, or returns a function.

包含函数或者函数返回值的函数是高阶函数

fun main() {

val result = operateTwoNumber(1, 2, { a: Int, b: Int -> a + b })#最后一个变量是函数,可以它放在括号外面

}

fun operateTwoNumber(x: Int, y: Int, op: (Int, Int) -> Int): Int {

return op(x, y)

}

`it`

主要用于函数类型中,当函数只有一个参数时,`it`用来表示这个参数对象。

类classes

相关推荐
不要喷香水11 小时前
00-总览与架构
kotlin·app·档案管理
hai_android11 小时前
Android 组件化开发实践
android·java·kotlin
传奇开心果编程1 天前
【Jetpack Compose基础语法学与练】第6课 TextField文本输入,字符串状态与输入交互
学习·前端框架·kotlin·android jetpack
ai2work2 天前
ch06 Jetpack Compose 入门:状态驱动 UI
kotlin
JMchen2 天前
第 12 篇|项目整合与打包发布 —— 从 Demo 到可安装 APK 的完整收官指南
kotlin·android studio
Android打工仔2 天前
不要在 Data 层随意把 Cold Flow 转换成 Hot Flow
android·架构·kotlin
杉氧2 天前
拒绝重复造轮子:我写了一个生产级的 Kotlin 协程与 Flow 工具库(CoroutineKit)
android·kotlin·workflow
JMchen3 天前
第 9 篇|网络请求基础 —— 从 HttpURLConnection 到 OkHttp
kotlin·android studio
hai_android4 天前
Kotlin Flow combine 源码剖析:一个 Channel 如何优雅合并多条流
android·java·kotlin
敲代码的瓦龙4 天前
Jetpack?ViewModel!!!
android·开发语言·kotlin·android-studio