Kotlin初次学习(2)

今天主要内容跟遍历,搜索,范围有关

集合的排除 有两种写法

今天机智的用了markdown

fun main(args: Array<String>) {
    var list :IntArray = intArrayOf(1, -2, 3) //数组表示方式

    val positives = list.filter { x -> x > 0 } //  排除x大于0   返回值是个数组
    val i = list.filter { it >2 }// 缩写,it直接表示list里面元素

    println(positives) //可以直接输出数组  神奇 还是我不知道哇搞错了,印象中java会输出地址值哇
    println(i)
} 

输出:
[1, 3]
[3]

遍历集合或者map

  • 里面很有趣,k ,v就是规定语法key 跟value 不需要自己定义,还有it,就是list里面规定的元素,当然也可以自己定义var值
  • 写集合或者写map就是这样写的,稍微有点奇怪记下就好
// var map : HashMap<String,Int> = hashMapOf<String,Int>()
    var map = hashMapOf<String,Int>()
    map.put("张三",17)
    map.put("李四",26)

    for ((k, v) in map) {
        println("$k -> $v")
    }

    var list = intArrayOf(1,2,3)
    for (it in list){
        println(it)
    }//下面就是输出
李四 -> 26
张三 -> 17
1
2
3

范围的搜索

  • 比如1到10,升序,降序啊,上一文章里面的间隔啊
for (i in 1..100) { ... }  //1到100 ,并且包含100
for (i in 1 until 100) { ... } // 1到99,但是不包含100
for (x in 2..10 step 2) { ... }间隔2个 ,输出2,4,6,8,10
for (x in 10 downTo 1) { ... }
if (x in 1..10) { ... }
  • 补充一个map写法 效果如下 所以不管集合还是map或链表都是xxxxof
val map = mapOf("a" to 1, "b" to 2, "c" to 3)
输出:
{a=1, b=2, c=3}
  • 还有一个补充用法 开始误解成,这是一个规定用法“key”,会打出所有value,原来只是通过键找值,比java更简便
 var map = hashMapOf<String,Int>()
    map.put("张三",17)
    map.put("李四",26)
    println(map["key"])
    println(map["张三"])
输出:
null
17

暂时写到这,碰到一个懒加载什么好好想想

-w

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,037评论 18 399
  • //Clojure入门教程: Clojure – Functional Programming for the J...
    葡萄喃喃呓语阅读 9,229评论 0 7
  • 一. Java基础部分.................................................
    wy_sure阅读 9,277评论 0 11
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,741评论 19 139
  • 周末,上初中的孩子回来了,妻子回来了,一家人终于聚齐了!尽管忙了一周,到家后,浑身都感到轻松。晚饭,一...
    红梅赞_af47阅读 1,625评论 0 2