Android-Kotlin-区间与for&List&Map简单使用
区间与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简单使用的更多相关文章
- 开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发
[原][开源框架]Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位... 时间 2015-01-05 10:08:18 我是程序猿,我为自己代言 原文 http: ...
- C++关联容器<map>简单总结
C++关联容器<map>简单总结 map提供大小可变的关联容器,基于关联键值高效检索元素值.当你处理键值对的数据是,都可以考虑使用map关联容器. 特点: 大小可变的关联容器,基于关联键值 ...
- 【开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位网友补充完善
链接地址:http://www.tuicool.com/articles/jyA3MrU 时间 2015-01-05 10:08:18 我是程序猿,我为自己代言 原文 http://blog.cs ...
- android Jni NDK开发环境搭建及其简单实例的编写
android Jni NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...
- Android之史上最全最简单最有用的第三方开源库收集整理
Android开源库 自己一直很喜欢Android开发,就如博客签名一样, 我是程序猿,我为自己代言 . 在摸索过程中,GitHub上搜集了很多很棒的Android第三方库,推荐给在苦苦寻找的开发者, ...
- Android(Lollipop/5.0) Material Design(一) 简单介绍
Material Design系列 Android(Lollipop/5.0)Material Design(一) 简单介绍 Android(Lollipop/5.0)Material Design( ...
- Android Studio 配置使用百度api (附带简单样例)
还是和同学开发的那个课程作业项目的app, 要使用到百度地图的api 但是,官方文档貌似只有Eclipse的例子,对Android Studio似乎没有说明. 难道,是因为后者是 "Doo ...
- Kotlin入门第四课:简单工厂模式
Kotlin基础知识的学习,请参考之前的文章: Kotlin入门第一课:从对比Java开始 Kotlin入门第二课:集合操作 Kotlin入门第三课:数据类型 初次尝试用Kotlin实现Android ...
- Android开发学习之路--RxAndroid之简单原理
学习了RxAndroid,其实也就是RxJava了,但是还是不是非常清楚到底RxAndroid有什么用呢?为什么要使用RxAndroid呢?这篇文章讲得不错,RxJava的原理.但是这里还是把整个 ...
随机推荐
- 超级好看!巧用PS将风光人像打造成唯美的小星球效果!
本篇教大家如何巧用PS将风光人像照片打造成唯美的小星球!教程讲解过程很细致,理论实操简单易懂,最终完成效果灰常的漂亮,喜欢的小伙伴赶快收走学起来吧! 原图: 效果图: PS:1.对齐图像,选中所有图, ...
- html里<div> <br /> <p>三者区别
一.语法不同 - TOP div和p是成对组合闭合标签:<br />是单一的闭合标签. 以<div>开始,</div>结束:以<p>开始,< ...
- tmp下莫名其妙生成root权限的缓存文件
现象: 原因:跟ngnix.conf有关,跟tmp的owner有关
- Spring Environment(二)源码分析
Spring Environment(二)源码分析 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) Spring Envi ...
- Spring ApplicationContext(二)环境准备
Spring ApplicationContext(二)环境准备 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) 本节介绍 ...
- mysql 查询 所有 父节点 单表
SELECT T2.* FROM ( SELECT @r AS _id, ( SELECT @r := parent_id FROM tp_module_rel WHERE REL_ID = _id ...
- 手机上输入http://192.168.1.102:8888/FiddlerRoot.cer为什么下载不了证书
因为之前你的手机可能已经安装了该证书,所以再次下载会说找不到证书 解决办法:如果你遇到上面的问题,就可能是证书的问题(我的本地证书是用系统生成证书的一个软件生成的个人证书,所以出现了问题),操作步骤如 ...
- SELECT INTO创建临时表
SELECT INTO创建临时表 SQL Server临时表有两种类型:本地和全局.它们在名称.可见性以及可用性上有区别.本地临时表的名称以单个数字符号 (#) 打头:它们仅对当前的用户连接是可见的: ...
- hdu-4300(字符串hash)
题目链接:传送门 参考文章:传送门 思路: (1)对字符串进行翻译,求出s1(未翻译),s2(已翻译)字符串,并分别对s1,s2进行hash操作. (2)比较s1的后x位和s2的前x位的hash值,求 ...
- Codeforces Round #543 (Div. 2)B,C
https://codeforces.com/contest/1121 B 题意 给你n(<=1000)个数ai,找出最多对和相等的数,每个数只能用一次,且每个数保证各不相同 题解 重点:每个数 ...