Kotlin(五) 循环语句

news2024/10/6 20:29:13

目录

For循环

关键字

until

step

downTo


Java中主要有两种循环语句:while循环和for循环。而Kotlin也提供了while循环和for循环,其中while循环不管是在语法还是使用技巧上都和Java中的while循环没有任何区别,因此我们就直接跳过不进行讲解了。


For循环

Kotlin在for循环方面做了很大幅度的修改,Java中最常用的for-i循环在Kotlin中直接被舍弃了,而Java中另一种for-each循环则被Kotlin进行了大幅度的加强,变成了for-in循环,所以我们只需要学习for-in循环的用法就可以了。

在使用for-in循环之前,还得先向你普及一个区间的概念,因为这也是Java中没有的东西。我们可以使用如下Kotlin代码来表示一个区间:

val range = 0..10

上述代码表示创建了一个0到10的区间,并且两端都是闭区间,这意味着0到10这两个端点都是包含在区间中的,用数学的方式表达出来就是[0, 10]。

其中,..是创建两端闭区间的关键字,在..的两边指定区间的左右端点就可以创建一个区间了。

有了区间之后,我们就可以通过for-in循环来遍历这个区间,比如在main()函数中编写如下代码:

fun main() {
    for (i in 0..10) {
        println(i)
    }
}

结果如图

 

关键字

  1. until

    val range = 0 until 10

    上述代码表示创建了一个0到10的左闭右开区间,它的数学表达方式是[0, 10)。

  2. step
     

    fun main() {
        for (i in 0 until 10 step 2) {
            println(i)
        }
    }

    上述代码表示在遍历[0, 10)这个区间的时候,每次执行循环都会在区间范围内递增2,相当于for-i循环中i = i + 2的效果。打印结果为0,2,4,6

  3. downTo

    fun main() {
        for (i in 10 downTo 1) {
            println(i)
        }
    }

    downTo就是将区间倒序输出10,9,8,7,6,5,4,3,2,1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/977066.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

winserver 2012 R2 部署记录

记一次winserver2012 R2 环境部署,程序要求 framework4.6.1 安装好之后发现报错,提示运行环境没有 4.6.1 支持,需要安装 于是先装了 chs 版本,发现报错。 再次打开卸载,重新安装enu版本,发现程序正常。

GPT引领前沿热点、AI绘图

GPT对于每个科研人员已经成为不可或缺的辅助工具,不同的研究领域和项目具有不同的需求。如在科研编程、绘图领域: 1、编程建议和示例代码: 无论你使用的编程语言是Python、R、MATLAB还是其他语言,都可以为你提供相关的代码示例。 2、数据可…

ubuntu 22.04 深度学习环境配置

第一步 安装驱动 网址:https://www.nvidia.com/download/index.aspx 根据硬件选择,我这里是 ubuntu 服务器,显卡是v100 sudo su root chmod ax NVIDIA //按 TAB 即可 加运行权限 # 禁用原显卡驱动 vim /etc/modprobe.d/blacklist.conf # 在最后一行…

服装商城小程序制作:打造便捷购物体验和提升销售额的利器

随着移动互联网的发展,服装商城小程序成为各大服装品牌推广销售的重要工具。它不仅能够为用户提供便捷的购物体验,还能帮助服装商城实现更高效的销售和管理。下面给大家介绍下服装商城小程序的优点以及制作流程,让您了解并充分利用这一利器。…

【视觉系统】电容正负极角度机器视觉测量软硬件方案-康耐德智能

电容正负极角度测量  客户的需求  检测内容 电容的正负极角度测量。  检测要求 判断电容的正负极,无精度要求,速度越快越好。  凯瑞斯评估  视觉可行性分析 对贵司的样品进行了光学实验,并进行图像处理,…

数据链路层中多路复用详解

MAC协调节点间信号的传输,经历避免节点间相互干扰 因此出现了两种信道划分方式,分别是:静态划分信道、动态划分信道 一、什么是多路复用 多路复用技术是把多个低速信道合成一个高速信道的技术,使得一条高速的主干链路同时为多条…

STM32 硬件IIC 控制OLED I2C卡死问题

1. STM32L151C8T6 硬件IIC 控制OLED 屏,OLED 驱动IC CH1116G, 查阅OLED 数据手册 2. STM32 硬件IIC 初始化,用的标准库,固件库 // stm32l151c8t6 as master, oled control ic (CH1116G) as slave, and communicate by master iic2 void STM3…

基于FPGA的ECG心电信号峰值检测和心率计算,包括testbench测试文件和ECG数据转换为coe文件程序

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 vivado2019.2 matlab2022a 3.部分核心程序 timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 202…

联想M7600D激光打印机墨粉盒清零方法

粉盒没有墨粉了,加粉后回来安装回打印机里还是会显示请更换墨粉盒;这个时候你就需要将粉盒的计数归一下零,好让机器重新计数;那么怎么清零呢?用什么方法清零呢?在哪里操作呢?下面我就告诉你一个…

Android中的view绘制流程,简单理解

简单理解 Android中的View类代表用户界面中基本的构建块。一个View在屏幕中占据一个矩形区域、并且负责绘制和事件处理。View是所有widgets的基础类,widgets是我们通常用于创建和用户交互的组件,比如按钮、文本输入框等等。子类ViewGroup是所有布局&…

Facebook 广告:如何为移动设备投放广告

图片来源于:SaleSmartly官网 如果您希望目标受众发现并看到您的企业,那么广告是至关重要的,但是哪些是宣传您的品牌的最佳方式呢?当今最常用的平台(手机)上的广告怎么样?能够回答这些问题很重要…

el-select数据过多的解决(纯前端)

前言 el-select数据过多这个问题应该很多人都遇到过,在生产环境中数据几百、几千条是比较常见的。当数据过多时,就会造成浏览器卡顿,如果客户电脑性能不行,浏览器直接卡死也有可能。 解决 先说一下现在项目中遇到的两种解决方案…

Activiti基础入门

文章目录 Activiti项目搭建引用依赖项Activiti服务初始化数据库配置配置文件测试demo Activiti功能服务RepositoryService:RuntimeService:TaskService:HistoryService:ManagementService:DynamicBpmnService&#xff…

使用【宝塔+docker】在云服务器上部署基于SpringBoot 和 Dubbo RPC 的项目:踩坑记录

待部署的项目包括:前端front,服务提供者backend,服务消费者gateway,注册中心nacos 服务器信息:腾讯云入门级服务器2核2G(后续有对服务器进行升级) 部署工具:前端使用宝塔部署&#x…

【python】logging报错KeyError: ‘formatters‘

报错 Traceback (most recent call last):File "E:\Python\lib\runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File &qu…

免费电脑清理工具:清除垃圾文件,提升性能表现

当电脑使用一段时间后,许多已安装的应用程序、文件或其他项目会在硬盘上积累起来。这会导致电脑运行速度变慢,或Windows提示你硬盘空间不足。在这个时候,你需要使用电脑清理工具来清理电脑。 电脑清理软件为用户提供了一种简单的方法…

【计组】2.3浮点数表示和运算

一、浮点数的表示 浮点数尾数的规格化 注:进行左规和右规仅移动数值位符号位不变 解释:尾数的最高数值位必须是一个有效位即算术意义上的1 规格化应用(与双符号位结合) 规格化浮点数的特点: 其中首位为符号位&#…

Linux之autofs自动挂载服务

目录 Linux之autofs自动挂载服务 产生原因 安装 配置文件分析 文件路径 作用 etc/auto.master文件内容格式 挂载参数 案例 案例1 --- 服务器创建共享目录,客户端实现自动挂载 案例2 --- 自动挂载光盘 Linux之autofs自动挂载服务 产生原因 在一般NFS文件系…

算法训练营day42|动态规划 part04(01背包问题基础(两种解决方案)、416.分割等和子集)

文章目录 01背包----二维dp数组01背包----滚动数组416.分割等和子集思路分析背包解法思考总结 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最…

第三方软件检测机构资质要求有哪些?专业测试报告如何申请?

科技信息的快速发展使得人们对于软件产品极度依赖,因此要想保障产品质量,测试必不可少。作为一家合格的软件检测机构,应当严格遵守相关资质要求,保证测试报告的专业性和可信度。 一、第三方软件检测机构需要具备的资质 1. 认证资…