一、数组的增删改查

1、数组遍历(查)

 val array: Array<String> = Array(5) { (it * 10).toString() }
//        下标for (item in array.indices) {println("下标为==>" + item)}
//        项的内容for (item in array) {println("项为==>" + item)}
//        下标和项for ((item,i) in array.withIndex()) {println("项为==> $item;下标为==>$i")}

另一种写法(推荐):

    val array: Array<String> = Array(5) { (it * 10).toString() }array.forEach {println("项的内容为:$it")}array.forEachIndexed { index, item ->println("下标为:$index;项的内容为:$item")}

A、使用map形式遍历(给数组的值都乘以2)

val num = listOf(1, 2, 3, 4, 5)val collect1 = num.stream().map { n: Int -> n * 2 }.collect(Collectors.toList())println(collect1) //[2, 4, 6, 8, 10]

B、使用filter形式遍历(找出大于2的数)

val num = listOf(1, 2, 3, 4, 5)val collect1 = num.stream().filter() { n: Int -> n > 2 }.collect(Collectors.toList())println(collect1) //[3,4,5]

C、使用anyMatch遍历(找出里面是否有2的值,返回boolean类型)

val num = listOf(1, 2, 3, 4, 5)
val collect1 = num.stream().anyMatch { n: Int -> n == 2 }
println(collect1) // true

D、检测state是否全部是2(返回true或false)

2、数组添加元素(不能add的解决方法)

在数组结尾加一个元素

 var array: Array<String> = Array(5) { (it * 10).toString() }val array1 = array.plus("100")

下面来说说不能add的解决方法:

        var adapterList11: List<Int> = ArrayList() // 此处adapterList11是不能直接使用add方法的val mIntList = mutableListOf<Int>()mIntList.add(1)mIntList.add(2)adapterList11 = mIntList

3、数组删除元素

删除数组第一个元素

 var array: Array<String> = Array(5) { (it * 10).toString() }val arr1=array.drop(1)

删除数组最后一个元素

 var array: Array<String> = Array(5) { (it * 10).toString() }val arr1=array.dropLast(1)

4、数组修改元素

 var array: Array<String> = Array(5) { (it * 10).toString() }array[2]="99"

二、map的增删改查过滤

val hashMap = hashMapOf("Java" to 86, "Kotlin" to 92, "Go" to 78)

1、hasMap增加元素

hashMap.put("uniapp",93)

批量放入多个 key-value 对,putAll(from: Map<out K, V>): Unit

2、hasMap删除元素

hashMap.remove("Go")

删除map里面的所有元素

 hashMap.clear()

3、hasMap修改元素

 hashMap["Java"] = 88

4、hasMap遍历所有元素

for ((key, value) in hashMap) {println("==>$key: $value")}

5、过滤(filter、any、all)

        //1、返回所有value大于90的数据val hashMap1 = hashMap.filter {it.value > 90//"o" in it.key       //key里面包含有字母o}println("hashMap1的值为==>: $hashMap1")//{Kotlin=92}//2、map里面是否有92的数据,返回true或者falseval hashMap2 = hashMap.any {it.value == 92}println("hashMap2的值为==>: $hashMap2")//true//3、 map.all 如果所有的元素都满足给定的条件,则返回 trueval hashMap3 = hashMap.all {it.value < 100 && it.value > 60}println("hashMap3的值为==>: $hashMap3")//true

三、for循环中断

1、return中断循环

 fun test3() {val list = ArrayList<Int>()list.add(1)list.add(2)list.add(3)list.add(4)run outside@{list.forEachIndexed { index, i ->println("-------------$index--------$i")                if (index == 2) { // 2改为5,就可以运行 “结束1” 这行输出代码,不然就会跳到outside标签return@outside}}println("====结束1====")}println("====结束2====")}

运行结果:

如果中断用的是return@test3,这个日志“====结束2====”就不会运行

2、continue中断当前次循环

fun test3() {out@ for (i in 0..2) {outj@ for (j in 0..2) {if (j == 1) continue@outjprintln("j ===》 $j")// 1的时候就不运行}}}

日志

kotlin——数组(增删改查)、haspMap(增删改查过滤)、for中断continue相关推荐

  1. 华山论剑之iOS中(数组,字典,SQLite,CoreData)的“增删改查“

    我们的生活态度就应该是 "不抱怨" ! 其实我想写这篇文章很久了,因为自己做的iOS开发 ,对数据这一块有这极高的要求.所以一些必须的存储数据的使用,我们都有必要熟悉用法.在以前我 ...

  2. SpringBoot增和MongoDB实现增删改查、复合查询

    SpringBoot增和MongoDB实现增删改查.复合查询 依赖 <dependency><groupId>org.springframework.boot</grou ...

  3. 微信小程序js数组初始化_微信小程序 数组(增,删,改,查)等操作实例详解...

    微信小程序 数组(增,删,改,查)等操作 最近在做一个小程序的demo.由于不向后台请求数据,所以就涉及到对本地数据的操作,也遇到了一些坑,本文就以数组的增删改查为例,给新手分享一些经验. 首先这是原 ...

  4. 微信小程序php返回数组,微信小程序 数组(增,删,改,查)等操作实例详解...

    微信小程序 数组(增,删,改,查)等操作 最近在做一个小程序的demo.由于不向后台请求数据,所以就涉及到对本地数据的操作,也遇到了一些坑,本文就以数组的增删改查为例,给新手分享一些经验. 首先这是原 ...

  5. 微信小程序 数组(增,删,改,查)

    微信小程序 数组(增,删,改,查) 最近在做一个小程序的demo里.由于不向后台请求数据,所以就涉及到本地数据的操作,本文以数据的增删改查为例 globalData:{userInfo:null,no ...

  6. JS中对数组元素进行增、删、改、查的方法,以及其他方法

    总结一下 JS中提供的方法可以对数组元素进行增.删.改.查以及其他方法 一.增加元素 1.push() push可接收任意数量的参数,把它们逐个添加至数组末尾,并且可以返回修改后数组的长度. 例子: ...

  7. RxAndroid之操作数据库SqlBrite(RXAndroid实现数据库的增、删、改、查)

    一.查询 1.创建SqlBrite [java] view plaincopy SqlBrite sqlBrite = SqlBrite.create(); 2.将SQLiteOpenHelper的一 ...

  8. Webform--LinQ 增、删、改、查

    一.简单介绍 1.LinQ to Sql类(NET Language Integrated Query (LINQ) ) LINQ定义了大约40个查询操作符,如select.from.in.where ...

  9. webform(八)——LinQ简单增、删、改、查

    一.简单介绍 1.LinQ to Sql类(NET Language Integrated Query (LINQ) ) LINQ定义了大约40个查询操作符,如select.from.in.where ...

  10. 怎么用PHP语句做出增改删查功能,mysql语句实现简单的增、删、改、查操作示例...

    本文实例讲述了mysql语句实现简单的增.删.改.查操作.分享给大家供大家参考,具体如下: 1.创建db_shop数据库,如果该数据库不存在则创建 createdatabaseifnotexistsd ...

最新文章

  1. LeetCode简单题之Fizz Buzz
  2. 关于Spring Cloud 框架热部署的方法
  3. 03-类与对象——课后动手动脑
  4. 提升心力---摆脱拿着锤子看啥都是钉子
  5. c语言程序算一元二次方程,如何用C语言来计算一元二次方程
  6. 【今日CS 视觉论文速览】Wed, 12 Dec 2018
  7. java token身份认证_java – 基于Spring Security Token的身份验证
  8. 多校赛 Barareh on Fire
  9. C是一个结构化语言它的重点在于算法和数据结构
  10. 从DWG导入SKP后的封面问题
  11. Delphi源码网站
  12. idea格式化代码时,注释被格式化问题
  13. springboot毕设项目流浪动物救助和领养平台e1yqy(java+VUE+Mybatis+Maven+Mysql)
  14. dbt-tidb 1.2.0 尝鲜
  15. gopl 底层编程(unsafe包)
  16. 202203读书-《 测试有道:微软测试技术心得》
  17. alibaba/COLA 4.0框架 使用记录
  18. GBase 8a语法格式
  19. 海思HI35xx语音识别方案
  20. WAIC预热 | 赋能企业数字化转型,容智信息×亿欧“AI商业落地论坛”重磅来袭

热门文章

  1. 引用 各类相册制作代码
  2. 打字练习pk之代码篇
  3. Android集成PayPal
  4. 牛客国庆集训day5 B 电音之王 (大数乘模)
  5. 《财务自由纲领》+《极图中的财务自由智慧》
  6. 【前端系列教程之JavaScript】01_JavaScript概述和引入方式
  7. 远程升级技术在汽车智能网联系统中的运用
  8. java项目ssh中文乱码_【SSH】Struts2处理中文乱码问题总结
  9. c语言输出10000以内的阿姆斯特朗数
  10. Skype V2 + PulseAudio 解决方案