区间与for:

package cn.kotlin.kotlin_base04

/**
* 区间与for
*/
fun main(args: Array<String>) { /**
* Kotlin中提供了区间,例如:存入1到100 , 在Java中可能要写多行代码,而在Kotlin中很简单,代码如下
* 1..100
*/
var numbers = 1..100 /**
* 用for循环打印
*/
for (n in numbers)
print("$n ") println("------------------------") var numbers2 = 20..25 /**
* 用for循环打印 有下标的详情
*/
for (n in numbers2.withIndex())
println("$n ") println("------------------------") /**
* 用for循环打印 有下标的
*/
for ((index, value) in numbers2.withIndex())
println("$index , $value ") println("------------------------") var numbers3 = 1..6 /**
* 用for循环打印 step(2) 是打印第二个 例如:123456 ,打印的是:135
*/
for (n in numbers3 step(2)) {
println("$n ")
} println("------------------------") /**
* 用for循环打印 step(3) 是打印第二个 例如:123456 ,打印的是:14
*/
for (n in numbers3 step(3)) {
println("$n ")
} println("------------------------") /**
* 反转 其实就是把数据倒过来,例如:1234 .reversed() 后 4321
*/
numbers.reversed()
}

执行结果:




List:

package cn.kotlin.kotlin_base04

/**
* 定义描述一个实体
*/
class Student(var name: String, var age: Int, var sex: String) /**
* List集合
*/
fun main(args: Array<String>) { /**
* 定义一个List集合,存入String字符串类型的数据
*/
var list :List<String> = listOf<String>("李小龙", "李元霸", "李连杰", "李云龙", "李子天") // 打印List集合里面的数据
for(lis in list) {
println("$lis ")
} println("------------------------------------------------") /**
* 定义一个List集合,存入Int整数类型的数据
*/
var listInt : List<Int> = listOf<Int>(1, 2, 3, 4, 5, 6, 7, 8 ,9) // 打印List集合里面的数据
for(lis in listInt) {
println("$lis ")
} println("------------------------------------------------") /**
* 定义一个List集合,存入float浮点型类型的数据
*/
var listFloat = listOf(10.0, 12.4, 54.6, 43.9, 24.7) // 打印List集合里面的数据
for(li in listFloat) {
println("$li ")
} println("------------------------------------------------") /**
* 定义一个List集合,存入Double双精度浮点型类型的数据
*/
var listDouble = listOf(90.0, 72.4, 74.6, 53.9, 84.7) // 打印List集合里面的数据
for(lis in listDouble) {
println("$lis ")
} println("------------------------------------------------") /**
* 定义一个List集合,存入Studnet实体
*/
var students = listOf<Student>(
Student("张三", 99, "男"),
Student("李四", 98, "女"),
Student("王五", 97, "男"))
for (student in students)
println("name:${student.name}, age:${student.age}, sex:${student.name}")
}

执行结果:




Map

package cn.kotlin.kotlin_base04

import java.util.*

/**
* Map集合 键值对 K V
*/
fun main(args: Array<String>) { /**
* 定义Map Key类型是Int, Value类型是String
*/
var map1: TreeMap<Int, String> = TreeMap<Int, String>()
map1[0] = "Java语言"
map1[1] = "Kotlin语言"
map1[2] = "C语言"
map1[3] = "C++语言"
map1[4] = "C#语言"
map1[5] = "PHP语言" // 打印Key Value详情
println("keys:${map1.keys}, values:${map1.values}") println("--------------------------------------------------") // 打印Map的值
for (m in map1)
println("key:${m.key}, value:${m.value}") println("--------------------------------------------------") /**
* 定义Map Key类型是String, Value类型是Double
*/
var map2 = TreeMap<String, Double>()
map2["一"] = 612.8
map2["二"] = 653.0
map2["三"] = 864.7
map2["四"] = 644.7
map2["五"] = 433.7 for (m in map2) {
println("key:${m.key}, value:${m.value}")
} println("--------------------------------------------------") /**
* 定义Map Key类型是int, Value类型是Int
*/
var map3: TreeMap<Int, Int> = TreeMap() // iVar是可以让for循环6次
var iVar = 1..6 // 用for 存储Map的值 iVar.count()可以得到总数6
for (i in iVar)
map3.set(i + 1, i + 100) // 用for 打印Map的值
for (m in map3)
println("key:${m.key}, value:${m.value}") println("--------------------------------------------------") /**
* 定义Map Key类型是Int, Value类型是Person实体
*/
var map4: TreeMap<Int, Person> = TreeMap()
map4[100] = Person("小华", 109, "男")
map4[300] = Person("小名", 110, "女")
map4[999] = Person("小丽", 100, "男") // 用for 打印Map的值
for (m in map4)
println("key:${m.key}, value:name${m.value.name},age${m.value.age},sex${m.value.age}")
} /**
* 定义描述一个实体
*/
class Person(var name: String, var age: Int, var sex: String)

执行结果:

Android-Kotlin-区间与for&List&Map简单使用的更多相关文章

  1. 开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发

    [原][开源框架]Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位... 时间 2015-01-05 10:08:18 我是程序猿,我为自己代言 原文  http: ...

  2. C++关联容器<map>简单总结

    C++关联容器<map>简单总结 map提供大小可变的关联容器,基于关联键值高效检索元素值.当你处理键值对的数据是,都可以考虑使用map关联容器. 特点: 大小可变的关联容器,基于关联键值 ...

  3. 【开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位网友补充完善

    链接地址:http://www.tuicool.com/articles/jyA3MrU 时间 2015-01-05 10:08:18  我是程序猿,我为自己代言 原文  http://blog.cs ...

  4. android Jni NDK开发环境搭建及其简单实例的编写

    android  Jni  NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...

  5. Android之史上最全最简单最有用的第三方开源库收集整理

    Android开源库 自己一直很喜欢Android开发,就如博客签名一样, 我是程序猿,我为自己代言 . 在摸索过程中,GitHub上搜集了很多很棒的Android第三方库,推荐给在苦苦寻找的开发者, ...

  6. Android(Lollipop/5.0) Material Design(一) 简单介绍

    Material Design系列 Android(Lollipop/5.0)Material Design(一) 简单介绍 Android(Lollipop/5.0)Material Design( ...

  7. Android Studio 配置使用百度api (附带简单样例)

    还是和同学开发的那个课程作业项目的app, 要使用到百度地图的api 但是,官方文档貌似只有Eclipse的例子,对Android Studio似乎没有说明.  难道,是因为后者是 "Doo ...

  8. Kotlin入门第四课:简单工厂模式

    Kotlin基础知识的学习,请参考之前的文章: Kotlin入门第一课:从对比Java开始 Kotlin入门第二课:集合操作 Kotlin入门第三课:数据类型 初次尝试用Kotlin实现Android ...

  9. Android开发学习之路--RxAndroid之简单原理

      学习了RxAndroid,其实也就是RxJava了,但是还是不是非常清楚到底RxAndroid有什么用呢?为什么要使用RxAndroid呢?这篇文章讲得不错,RxJava的原理.但是这里还是把整个 ...

随机推荐

  1. LoibreOJ 2042. 「CQOI2016」不同的最小割 最小割树 Gomory-Hu tree

    2042. 「CQOI2016」不同的最小割 内存限制:256 MiB时间限制:1000 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据   题目描述 ...

  2. JDK 规范目录

    JDK 规范目录 1.1 Java 异常处理 2.1 JDK 之 NIO 2 WatchService.WatchKey(监控文件变化) https://mp.weixin.qq.com/s/NIn2 ...

  3. 买茶叶想到的哪个比较便宜 x1/y1 >x2/y2 x代表多少钱 y代表 多少克 无聊的试炼

    茶叶1 128元     200克 茶叶2  330元    160克 当然这个哪个便宜 一眼就知道了,这里不过抛砖引玉 128元    330元 200克    160克 我们把价钱用x表示 多少克 ...

  4. spring学习 十四 注解AOP 通知传递参数

    我们在对切点进行增强时,不建议对切点进行任何修改,因此不加以使用@PointCut注解打在切点上,尽量只在Advice上打注解(Before,After等),如果要在通知中接受切点的参数,可以使用Jo ...

  5. ServiceDesk Plus解析内容,简化工单管理

  6. kbmmw 5.0 beta1 发布

    经过大半年的等待,kbmmw 的新版终于来了.经过近5年的打磨, kbmmw 的版本号升级到5了. kbmMW is a portable, highly scalable, high end app ...

  7. openstack查看命令的restful调用形式

    [root@cc10 fast-pulsar2]# [root@cc10 fast-pulsar2]# cinder --debug type-create hzb DEBUG:keystonecli ...

  8. vba中布尔类型、字符串操作

    在vba中,bool类型数据可以参与数学运算,true为-1,false为0 Sub mysub() Dim mybool As Boolean Debug.Print Debug.Print myb ...

  9. BZOJ 1029 [JSOI2007]建筑抢修 (贪心 + 优先队列)

    1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec  Memory Limit: 162 MBSubmit: 5452  Solved: 2422[Submit][Statu ...

  10. 构造函数的prototype和constructor属性

    Car.prototype = { name:'BMW', height:1400, long:4900 } function Car(color,owner){ this.color = color ...