Kotlin学习笔记-----取值范围和循环

取值范围

kotlin中可以给一个变量赋值一个范围, 而不仅仅是单个的值

例如:

// 表示从1到100的值
// 此时起始值要小于结束值
var i = 1..100

通过downTo可以表示从100到1

// downTo的起始值要大于结束值
var i = 100 downTo 1

也可以使用reversed()来将正序的反转

// 通过reversed反转
var i = 1..100
i.reversed()

可以使用step控制步长

// 此时就是1到100的值, 每次增长2
var i = 1..100 step 2

可以使用until, 表示包含左边, 不包含右边的范围, 数学符号为[start, end)

// 包含左边不包含右边[1, 100)
var i = 1 until 100

循环

取值范围往往和循环连用,kotlin中的循环和java中一样, 有for, whiie, do...while,

for循环

kotlin中的for循环和java中的for循环有点区别

// 使用for循环输出1到10
for(num in 1..10) {
  println(num)
}
?
// 使用for循环输出1到10的奇数
// step可以理解为步长, step其实是取值范围符号".."的属性, 而不是for的
for(num in 1..10 step 2) {
  println(num)
}

while循环

// 和java中的while循环没什么区别
while(true) {
  println("hello")
}

do...while循环

do {
  println("hello")
} while(true)

原文地址:https://www.cnblogs.com/sweep/p/8686348.html

时间: 2024-08-30 07:17:07

Kotlin学习笔记-----取值范围和循环的相关文章

Struts2学习笔记(2)值传递

1.action接收jsp传过来的值: a.定义一个User类   有name  pwd属性,  添加相应的get,set方法   b.<!-- 方式1 普通java类 -->  在UserAction中    添加: private User user;  并添加相应的get,set方法 <!-- 方式2 实现ModelDriven<T>接口-->   在UserAction中   @Override   public User getModel() {    ret

python基础教程_学习笔记7:条件、循环、其它语句

条件.循环.其它语句 print和import 随着更加深入地学习python,可能会出现这种感觉:有些自以为已经掌握的知识点,还隐藏着一些让人惊讶的特性. 使用逗号输出 打印多个表达式,只要将这些表达式用逗号隔开即可: >>> print "age:",28 age: 28 参数之间都插入了一个空格符. 如果在结尾加上逗号,那么接下来的语句会与前一条语句在同一行打印: print "Hello,", print "World!"

FreeRTOS学习笔记——二值型信号量

1.前言 在嵌入式操作系统中二值型信号量是任务间.任务与中断间同步的重要手段.FreeRTOS的二值型信号量简单易用,下面结合一个具体例子说明FreeRTOS中的二值型信号量如何使用. [相关博文] [FreeRTOS STM32移植笔记] [FreeRTOS学习笔记--任务间使用队列同步数据] [如何在FreeRTOS下实现低功耗--MSP430F5438平台] [代码链接]--示例代码存于百度网盘 2.特别说明         二值型信号量的使用方法见图1所示,二值型信号量可以理解为任务与中

【我的OOP学习笔记】值与引用(2)语义类型

值与引用 值语义的对象是独立的,语义的对象却是允许共享的.由于Java不支持值类型对象,Java程序员才更需要加强这方面的意识.语法和语义并不总是一致的——语法上的值类型可能在语义上是引用类型,语法上的引用类型可能在语义上是值类型.永远不要忘记一个基本原则:语法只是手段,语义才是目的. 为了判断一个类型的语义,那么简明的‘石蕊测试法’便是一个很好的选择.在不影响程序正确性的前提下,一个对象的复件能否代替原件?如果可以则该对象的类型是值语义的,否则是引用语义的.(这种判断方法与语法无关,完全取决于

python的学习笔记(0)之循环的使用1

这是我第一次正式的开始学习这门语言,虽然之前也多多少少接触过一点,但是一直没有深入的学习和研究过,所以我打算从今天起准备开始由浅入深的学习下这门语言. python这门语言和其他语言相比最大的特点就是简单,对就是简单,比如完成同一个功能,可能用c++来实现,就需要写很多代码,但在python这里就只需要几行代码就可以搞定,这就是他的优势,当然他的优势远不止于此,可能还有很多,但就以目前的我,可能还没有发现,其他的还需要我在以后的学习深入中去体会和了解! while的使用 先上一张流程图 1 #c

《objective-c基础教程》学习笔记(二)—— for循环的基本应用

在上一篇博文中,我们介绍了如何开发前期的准备,以及简单的类型输出实例. 这篇博文,我要记录一个for循环输出的实例.并对此展开,改变成不同的三个小函数. 1 int main(int argc, const char * argv[]) 2 { 3 int count = 5; 4 NSLog(@"The numbers from 1 to %d:", count); 5 int i; 6 for (i=1; i<=count; i++) 7 { 8 NSLog(@"%

GO学习笔记 - Go 只有一种循环结构—— for 循环。

一,Go 只有一种循环结构-- for 循环. 官方教程:https://tour.go-zh.org/flowcontrol/1 Go 只有一种循环结构-- for 循环. 基本的 for 循环包含三个由分号分开的组成部分: 初始化语句:在第一次循环执行前被执行 循环条件表达式:每轮迭代开始前被求值 后置语句:每轮迭代后被执行 初始化语句一般是一个短变量声明,这里声明的变量仅在整个 for 循环语句可见. 如果条件表达式的值变为 false,那么迭代将终止. 注意:不像 C,Java,或者 J

Kotlin学习笔记-----变量和常量

变量的声明和使用 关键字: var 示例: var name = "张三" 显示的定义变量的数据类型 var 变量名: 变量类型 var 变量名: 变量类型 = 值 示例: var name:String = "张三" 常量的声明和使用 关键字val 示例: val age = 18 常量被声明后,就不能再修改, 相当于被final修饰 所以无法再 age = 17 进制的方式赋值 二进制: 二进制在数字前加0b 示例:var aInt:Int = 0b0011 八

swift 学习笔记:值类型and参考类型!

helloworld篇章 值: swift中类型分为两种:第一种是值类型,该类型的每个实例持有数据的副本,并且该副本对于每个实例来说是独一无二的一份,比如结构体(struct).枚举(enum).元组(tuple)都是值类型.第二种是参照类型,该类型的实例共享数据唯一的一份副本(在native层面说的话,就是该类型的每个实例都指向内存中的同一个地址),比如类(class)就是参照类型 如果你想创建一个新类型,那么你应该选择值类型还是参照类型呢?当你使用Cocoa框架时,很多API都是NSObje