您的位置:首页 > 其它

Kotlin基础 2 - 数组、表达式、循环语句

2017-06-26 17:48 225 查看

Kotlin中的数组

Kotlin为八大基本类型 都提供了包装数组

boolean、char、byte、short、int、long、float、double

BooleanArray

CharArray

ByteArray

ShortArray

IntArray

LongArray

FloatArray

DoubleArray

//基本类型数组
val arrayOfInt:IntArray = intArrayOf(1,2,3)
//String数组
val arrayOfString:Array<String> = arrayOf("我","是","谁")
//自动类数组
val list:Array<Person> = arrayOf(Person("张三"), Person("李四"),Person("王五"))


Kotlin中的 中缀(zhui)表达式

什么是中缀表达式

只有一个参数,且用 infix 修饰的函数

class Book{
infix fun on(place:String): Boolean {
println("你调用了我,并且传了:$place")
if(place.endsWith("end")){
return true
}
return false
}
}

fun main(args: Array<String>) {
if (Book() on "啦啦啦啦end"){
println("存在:end")
}else{
println("不存在:end")
}

}


If 表达式

为什么使用== 不是因该是 equals ?

kotlin中 字符串对比用== 比较同一内存对象为 ===

fun main(args: Array<String>) {
val name = "张三"
if(name == "张三"){
print("存在")     //调用这句话
}else{
print("同名")
}
}


When表达式

When表达式是什么?

其实就是 java c++里的 switch

fun main(args: Array<String>) {
val x = 105
when(x){
in 1..100 -> println("$x is in 1..100")   //不用break  区间
else -> println("其他值")
}
}


For循环

简单迭代

val arrayOfInt:IntArray = intArrayOf(1,2,3,5,6)
fun main(args: Array<String>) {
//输出结果 1 ,2 ,3 ,5 ,6 ,
for (value in arrayOfInt){
print( "$value ,")
}
}


ForEach

val arrayOfChar:CharArray = charArrayOf('H','e','l','l','o')
fun main(args: Array<String>) {
//分别数组 hello
arrayOfChar.forEach { println(it) }
}


需要下标 怎么玩?

val arrayOfChar:CharArray = charArrayOf('H','e','l','l','o')
fun main(args: Array<String>) {
//0 - H  分别输出格式
for ((index,value) in arrayOfChar.withIndex()){
println( "$index - $value")
}
}


跳出本次循环 continue

val arrayOfChar:CharArray = charArrayOf('H','e','l','l','o')
fun main(args: Array<String>) {
//分别输出  helo  少了 l
for ((index,value) in arrayOfChar.withIndex()){
if(index == 2){
continue
}
println(value)
}
}


跳出本次循环 continue

val arrayOfChar:CharArray = charArrayOf('H','e','l','l','o')
fun main(args: Array<String>) {
//分别输出  helo  少了 l
for ((index,value) in arrayOfChar.withIndex()){
if(index == 2){
continue
}
println(value)
}
}


结束循环 break

val arrayOfChar:CharArray = charArrayOf('H','e','l','l','o')
fun main(args: Array<String>) {
//输出 he
for ((index,value) in arrayOfChar.withIndex()){
if(index == 2){
break
}
println(value)
}
}


多层嵌套循环 结束符的使用

//死循环
Outter@while (true){
for ((index,value) in arrayOfChar.withIndex()){
if(index == 2){
break@Outter
}
println(value)
}
}
//输出结果 he
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐