本章体会下kotlin语言中变量定义与函数定义以及一些常用表达式与JAVA的不同
大部分是相同的,变量和函数的使用更方便
class PromgramStructure {
val TAG = "PromgramStructure"
//val类似final
val valueParam = 1
//其他类型变量,不再区分成员变量,局部变量,静态变量
var variableParam = 1
//变量类型如果有赋值会根据值自动推导,无需声明,以下两个是等价的
// var param:String = "ACG"
// var param = "ACG"
// fun函数名:[返回值类型]{[函数体]}
// fun函数名=[表达式]
//函数后面也可以接等号,函数体可以用一行表示时可用此表达方式
fun testFuns() {
Log.d(TAG, "testFuns")
}
fun testFuns2() = Log.d(TAG, "testFuns2")
// lambda表达式, 表达匿名函数
val sum = {a:Int, b:Int -> a+b}
fun testLambda() = sum(1,2)
fun testLambda2() = sum.invoke(1,2)
// if表达式
fun testIf() {
//同java
val a = 1
val b = 2
if (a == b) {
Log.d(TAG, "testIf: a==b")
} else {
Log.d(TAG, "testIf: a!=b")
}
//等同于?:三元操作符
var c = if(a==2) 3 else 4
}
fun testWhen() {
//类似于Switch
val a = "Today is nice"
val b = when {
a.contains("is") -> {
"OK"
}
a.contains("nice") -> {
"BAD"
}
//必须要添加else
else -> {
"NORMAL"
}
}
}
fun testFor() {
val intArray= intArrayOf(1,2,3)
for(num in intArray) {
Log.d(TAG, "testFor: $num")
}
for((index, value) in intArray.withIndex()) {
Log.d(TAG, "testFor: $index -> $value")
}
}
}
本文探讨了Kotlin中变量定义的简化、函数的便捷写法,以及lambda表达式、if-else和when-else结构的区别,展示了Kotlin与Java在编程语法上的差异和优势。
202

被折叠的 条评论
为什么被折叠?



