区间与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. html 转化成 pdf

  2. mac install brew

    $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" ...

  3. ListView动态改变每一项的高度。

    ListView中每一项的高度默认是相同的,除非超过其预定高度值,否则需要动点手脚. VariableSizedListView 继承 ListView然后重写protected override v ...

  4. MySQL基准测试--innodb_buffer_pool_instances

    http://blog.chinaunix.net/uid-26896862-id-3345441.html 目的 根据现有硬件环境下,测试MySQL单实例下,在数据量小于innodb_buffer_ ...

  5. tensorflow下识别手写数字基于MLP网络

    # coding: utf-8 # In[1]: import tensorflow as tf import tensorflow.examples.tutorials.mnist.input_da ...

  6. 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP

    虽然现在JS做报表和图形展示已经非常普遍和漂亮了,但是不能忽略有jfreechart 这样一种东西! 这些翻阅资料,在看以前写的示例时发现了关于jfreechart 的简单示例,不管怎样发上来分享一下 ...

  7. RBAC简介

    1.RBAC 中文名称:基于角色的访问控制 1.1 作用:实现访问控制 1.2 核心:角色 2.英文名称:(Role-Based Access Control) 3.解释:一种思想,根据RBAC思想进 ...

  8. [转]MySQL索引原理及慢查询优化

    MySQL凭借着出色的性能.低廉的成本.丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库.虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位 ...

  9. 关于Code Review

    为了保证代码质量,我们团队内部一直在推行Code Review.现在Code Review帮我们发现了很多代码的问题,提升了代码的可读性和质量,同时我们在Code Review上也花费了很多时间,有些 ...

  10. boost-智能指针

    使用boost的智能指针需要包含头文件"boost/smart_ptr.hpp",c++11中需要包含头文件<memory> 1.auto_ptr.scoped_ptr ...