Kotlin(1)-基本语法

点击量:21

本章节主要记录Kotlin语言的基本语法,重点突出与java的区别.大量忽略相同之处

Kotlin

基本语法

函数定义
//返回值为空则使用Unit表示void

//直接用表达式作为函数体
fun fun1(a: Int, b: Int) = a * b



//无返回值的函数,Unit可以省略,相当于void
public fun fun2() :Unit{
   println("这是fun2")
}



//可变长参数的函数,用vararg声明变量
public fun fun3(vararg v:Int){
   for (i in v) {
       println(i)
  }

}

//直接定义lambda表达式(匿名函数)
public val myLambda:(String ,String)-> String={x,y->x+y}

* 有返回值,编译器可以自动推断返回值类型,所以返回值可以省略
常量与变量的定义
var a:String="zhangsan"   详细定义变量
var b="ss"  自动推断出变量类型
var c:Int   只定义,不赋值

val : 用于定于不可变变量
数组
val a=arrayOf(1,2,3)      //1,2,3
val b=Array(4,{i->(i*2)}) //0,2,4,6

a[1] [] 表示调用成员函数的get()和set()方法

//获取数组的索引
a.indics
集合
var list=listOf("zhangsan","lisi","wangwu")

//获取集合色索引
list.indices

变量的调用
$username 
$不能被转义 输出:${'$'} 32  -->  $ 32
NULL检查机制
?对可能为null的值不做处理
?:可以用于做空判断处理
var name:String?=null;
var myName=name?:"zhangsan" //如果为空,则为张三
Kotlin基本数据类型
类型位宽度
Double64
Float32
Long64
Int32
Short16
Byte8
注意:
二进制以 0b 开头
可以使用_是数字易读
var num:Long=1000_0000_00L
基本类型比较
=== 值相等,对象地址也相等
==  值相等
位操作
shl(bits) – 左移位 (Java’s <<)
shr(bits) – 右移位 (Java’s >>)
ushr(bits) – 无符号右移位 (Java’s >>>)
and(bits) – 与
or(bits) – 或
xor(bits) – 异或
inv() – 反向
条件控制

if: 如果 条件成立

//可以直接进行赋值
val c = if (condition) a else b

//区间判断
val x=5
if(x in 1..8){
   println("x在区间内")
}

when: 当 条件成立 类似于switch

//when中的条件一旦成立,就会退出when代码块

when (x) {
   0, 1 -> print("x == 0 or x == 1")
   else -> print("otherwise")
}




var x = 20
var validNumbers = arrayOf(1, 2, 3, 4, 5, 6,20)

when (x) {
   in 1..10 -> print("x is in the range")
   in validNumbers -> print("x is valid")
   !in 10..20 -> print("x is outside the range")
   else -> print("none of the above")
}
循环控制
//数组或集合遍历
for (index in items.indices) {
    println("item at $index is ${items[index]}")
}


感谢您的阅读
文章由作者个人总结,欢迎指出文章错误



上一篇:COS腾讯云工具类

下一篇:JMS操作ActiveMQ