Kotlin 入门总结1

147 阅读1分钟

Kotlin 里面比较String 的值是否相等 ==

Java 中 == 比较的内存地址 equals 比较的才是值

Kotlin 不能直接类型转换,可以做类型推到比如

val e:Int=10

val f:Long=e //不被允许

改为:

val f:Long=e.toLong()

Kotlin 数组创建方式

val c0=intArrayOf(1,2,3,4,5)

val c1=IntArray(5){it+1}

数组的长度 c1.size

4.数组遍历元素

val e = floatArrayOf(1f, 2f, 3f, 4f, 5f)

e.forEach {

print(it)

}

5.判断是都有某个元素

if (1f in e) {

}

if (e.any { it == 1f }) {

}

6.区间 step标识步长

val intRange = 1..10 step 2

val intRange2 = 1 downTo 10 step 2

print(intRange.joinToString())

print(intRange2.joinToString())

7.集合

val arrayList = ArrayList()

arrayList+="zhangsan"等价于arrayList.add("zhangsan")

//key value

val hashmap = HashMap<String, Any>()

hashmap["name"]="zhangsan"

// pair triple

val pair=Pair("3",4)

pair.first

val triple=Triple("3",4,555)

triple.third

Kotlin 函数使用

//方法、参数、返回值

fun method(param1:String,param2:String):String{

return param1+param2

}

函数引用

//定义一个x,用函数引用Foo::bar赋值给他(Foo->receiver)

val x:(Foo,String,Long)->Any=Foo::bar

val x0:Foo.(String,Long)->Any=Foo::bar

val x2:Function3<Foo,String,Long,Any> =Foo::bar

class Foo{

fun bar(param1:String,param2:Long):Any{

return ""

}

}

函数变长参数

vararg 关键字

fun longParams(vararg ints:Int){

print(ints.contentToString())

}

longParams(1,2,3,5)

函数多返回值返回 pair、triple 类型

函数默认参数和具名参数 默认z,具名y

fun defaultParams(x:Int,y:String,z:Long=5L){

}

defaultParams(3,y="hello")