Kotlin流程控制、循环

简介: Kotlin流程控制、循环

一、流程控制

1.if

val i = 1
if (i > 0) {
    print("Big")
} else {
    print("Small")
}

使用if,赋值。

val i = 1
val message = if (i > 0) "Big" else "Small"
 
print(message)
fun getLength(text: String?): Int {
  return if (text != null) text.length else 0
}

上边的简写,Elvis 表达式

fun getLength(text: String?): Int {
  return text?.length ?: 0
}

2.when

val i: Int = 1
 
when(i) {
    1 -> print("一")
    2 -> print("二")
    else -> print("i 不是一也不是二")
}
val i: Int = 1
 
val message = when(i) {
    1 -> "一"
    2 -> "二"
    else -> "i 不是一也不是二" // 如果去掉这行,会报错
}
 
print(message)

二、循环

1、for

 val oneToThree = 1..3
    for (i in oneToThree) {
        println(i)
    }
 
    for (i in 6 downTo 0 step 3) {
        println(i)
    }
 
    for (i in 0..10) {
        println(i) //012345678910
    }
    for (i in 0 until 10) {
        println(i) //0123456789
    }
    for (i in 0..10 step 2) {
        print(i) //0 2 4 6 8 10
    }
    //获取元素
    var abc = listOf("a", "b", "c")
    for (i in abc) {
        print(i)
    }
    //    获取下标
    for (index in abc.indices) {
        print("$index") // 0 1 2
    }
    //    获取元素和下标
    for ((index, value) in abc.withIndex()) {
        print("$index:$value ")  //0:a 1:b 2:c
    }

2、while

var i = 0
while (i <= 2) {
    println(i)
    i++
}
 
var j = 0
do {
    println(j)
    j++
} while (j <= 2)
 
目录
相关文章
|
9月前
|
分布式计算 Java 数据安全/隐私保护
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(下 )
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(下)
46 0
|
9月前
|
Java Kotlin
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(上)
Kotlin 学习笔记(二)—— 数据类、枚举类、循环、常用集合及操作符的写法(上)
37 0
|
安全 Java Kotlin
Kotlin刨根问底(二):for循环引起的一起“血案”(下)
本文灵感来源于:群友遍历列表时remove元素引发异常,后对for循环的实现原理进行一系列的探究~
265 0
|
设计模式 缓存 Java
Kotlin刨根问底(二):for循环引起的一起“血案”(中)
本文灵感来源于:群友遍历列表时remove元素引发异常,后对for循环的实现原理进行一系列的探究~
310 0
|
安全 Java 测试技术
Kotlin刨根问底(二):for循环引起的一起“血案”(上)
本文灵感来源于:群友遍历列表时remove元素引发异常,后对for循环的实现原理进行一系列的探究~
447 0
|
Java Android开发 图形学
Android修行手册之Kotlin-【条件语句】、【循环控制】篇
众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣!!!
297 0
|
Kotlin
【Kotlin】循环控制流 ( for 循环 | Iterator 遍历形式 | Iterator 遍历要求 | IntArray 源码解析 )
【Kotlin】循环控制流 ( for 循环 | Iterator 遍历形式 | Iterator 遍历要求 | IntArray 源码解析 )
310 0
|
1月前
|
安全 Java Android开发
使用Kotlin进行Android应用开发:高效、简洁与乐趣并存
【6月更文挑战第1天】Kotlin,JetBrains开发的静态类型语言,正日益成为Android开发首选。它与Java兼容,提供简洁、安全的语法,如空安全、扩展函数和Lambda表达式,提升开发效率和代码可读性。Kotlin在Android开发中的优势包括提高开发速度、降低学习曲线及强大的社区支持。实践中,数据类简化对象创建,扩展函数增强SDK,Lambda表达式简化回调处理,协程优化异步操作。掌握Kotlin对Android开发者极具价值。
|
2月前
|
存储 安全 Android开发
构建高效的Android应用:Kotlin与Jetpack的结合
【5月更文挑战第31天】 在移动开发的世界中,Android 平台因其开放性和广泛的用户基础而备受开发者青睐。随着技术的进步和用户需求的不断升级,开发一个高效、流畅且易于维护的 Android 应用变得愈发重要。本文将探讨如何通过结合现代编程语言 Kotlin 和 Android Jetpack 组件来提升 Android 应用的性能和可维护性。我们将深入分析 Kotlin 语言的优势,探索 Jetpack 组件的核心功能,并通过实例演示如何在实际项目中应用这些技术。
|
14天前
|
安全 Java 编译器
Android面试题之Java 泛型和Kotlin泛型
**Java泛型是JDK5引入的特性,用于编译时类型检查和安全。泛型擦除会在运行时移除类型参数,用Object或边界类型替换。这导致几个限制:不能直接创建泛型实例,不能使用instanceof,泛型数组与协变冲突,以及在静态上下文中的限制。通配符如<?>用于增强灵活性,<? extends T>只读,<? super T>只写。面试题涉及泛型原理和擦除机制。
18 3
Android面试题之Java 泛型和Kotlin泛型