Kotlin之for循环的具体使用说明

我们用java进行Android开发过程中,经常会用到for循环,在Kotlin中也会经常用到,但是在最近使用Kotlin中我发现,在java中使用for循环不会有什么问题,但是在Kotlin中会出现问题,就是循环出出来的结果不一样,到目前还未找到合适的解决方法,希望通过记录这个问题,以便以后遇到类似问题能够方便查找。下面具体具体说明一下:

在JAVA中的使用:

            List<Double> pos = new ArrayList<>();for (int k1 = 0; k1 < poslists.size() - 1; k1 = k1 + 2) {String a1 = poslists.get(k1);String a2 = poslists.get(k1 + 1);int b1 = Integer.parseInt(a1.substring(0, a1.lastIndexOf('_')));int b2 = Integer.parseInt(a2.substring(0, a2.lastIndexOf('_')));for (int i = b1; i < b2; i++) {pos.add(Double.parseDouble(a1.substring(a1.lastIndexOf('_') + 1)));}}

其中:poslists是一个List<String> 其中添加的数据类型是0_5,332_7等等,pos获取的是5,7等等,在Java中就完全没问题,但是在kotlin中获取的数据就会出现少数据(主要体现在:每次变换体位,比如5-7就会多出来一个值)

下面是Kotlin中对应的这段代码:

var k1 = 0
while (k1 < poslists.size - 1) {val a1: String = poslists.get(k1)val a2: String = poslists.get(k1 + 1)val b1 = a1.substring(0, a1.lastIndexOf('_')).toInt()val b2 = a2.substring(0, a2.lastIndexOf('_')).toInt()for (i in b1 until b2) {pos.add(a1.substring(a1.lastIndexOf('_') + 1).toDouble())}k1 = k1 + 2
}

希望有知道的网友能够帮忙看一下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/215020.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端框架(Front-end Framework)和库(Library)的区别

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

阿里云国际版CDN加速,如何判断网站IP已加速?

将源站接入阿里云CDN服务后&#xff0c;您可以通过IP检测功能&#xff0c;检测客户端请求实际访问的IP是否为CDN加速节点IP&#xff0c;判断加速是否生效。 应用场景 IP检测的应用场景如下&#xff1a; 场景一&#xff1a;成功配置CDN后&#xff0c;您可以检测客户端请求实际…

Android popupwindow在低版本手机上无法显示

所以我开始看各个参数&#xff0c;注意到了在我自定义popupwindow的builder下的&#xff1a;&#x1f447;&#x1f447; .showAsDropDown(mLinMain, 0, 0);就是这个&#xff0c;这时候我想到了屏幕的原点坐标是&#xff08;0&#xff0c; 0&#xff09;&#xff0c;所设置的p…

Postman高级应用——变量、流程控制、调试、公共函数、外部数据文件

Postman 提供了四种类型的变量 环境变量&#xff08;Environment Variable&#xff09; 不同的环境&#xff0c;使用不同的环境变量&#xff0c;例如&#xff1a;测试过程中经常会用到 测试环境&#xff0c;外网环境等 全局变量&#xff08;Global Variable&#xff09; 所有的…

12.使用 Redis 优化登陆模块

目录 1. 使用 Redis 优化登陆模块 1.1 使用 Redis 存储验证码 1.2 使用 Redis 存储登录凭证 1.3 使用 Redis 缓存用户信息 1. 使用 Redis 优化登陆模块 使用 Redis 存储验证码&#xff1a;验证码需要频繁的访问与刷新&#xff0c;对性能要求较高&#xff1b;验证码不需要永…

【计算机网络】序列化,反序列化和初识协议

目录 ​编辑 一、概念 二、 序列化过程&#xff1a; 选择序列化格式&#xff1a; 实现序列化代码&#xff1a; JSON示例&#xff1a; Protocol Buffers示例&#xff1a; JSON编码示例&#xff1a; 传输或存储&#xff1a; 三、反序列化过程&#xff1a; 下面是反序列…

web前端之中文输入法导致的高频事件、addEventListener、compositionstart、compositionend

MENU 代码compositionendcompositionstartaddEventListener 代码 html <input type"text" />JavaScript var inp document.querySelector(input); let isComposing false;function search() {if (isComposing) return false;console.log(搜索: , inp.valu…

(企业 / 公司项目) 企业项目如何使用jwt?

按照企业的项目然后写的小demo&#xff0c; 自己搞一个登录接口然后调用jwtUtil工具类 后端实现 创建一个通用模块common来实现jwt生成token 登录注册的基本实现逻辑思路 面试| ProcessOn免费在线作图,在线流程图,在线思维导图 注释挺详细的jwtUtil工具类&#xff0c; 封装的…

WPF仿网易云搭建笔记(5):信息流控制之IOC容器

文章目录 专栏和Gitee仓库前言IOC容器Prism IOC使用声明两个测试的服务类MainWindow IOC 注入[单例]MainWindow里面获取UserController无法使用官方解决方案 使用自定义IOC容器&#xff0c;完美解决既然Prism不好用&#xff0c;直接上微软的IOC解决方案App.xaml.csViewModel里面…

网络测试工具:tcping-测试端口连接

网络测试工具&#xff1a;tcping-测试端口连接 平常使用的ping&#xff0c;是通过icmp协议去测试网络连通性的&#xff0c;tcping是通过tcp三次握手测试端口的连通性。总的来说&#xff0c;ping测试的是L3的连通性&#xff0c;tcping测试的是L4的连通性。 tcping工具下载 htt…

10.RIP路由信息协议

10.RIP 网段经常产生变化的话&#xff0c;建议使用动态路由协议&#xff0c;当网段发生变化的时候会自动通告给其他路由器 它不看链路的带宽&#xff0c;只看链路中的跳数&#xff0c;只要是跳数多的&#xff0c;不管带宽有多大&#xff0c;它就认为是不好的 RIP跳数有限 …

java中LinkedList和List继承有什么区别?

在Java中&#xff0c;LinkedList 和 List 是两个不同的概念。List 是一个接口&#xff0c;而 LinkedList 是实现了 List 接口的一个具体类。 List 接口&#xff1a; List 是Java集合框架中的一个接口&#xff0c;它表示有序的集合&#xff0c;允许重复元素。List 接口继承自 C…

TYPE-C接口设备实现DRP+OTG功能芯片

随着USB-C接口的普及&#xff0c;欧盟的法律法规强制越来越多的设备开始采用这种接口。由于 USB-C接口的高效性和便携性&#xff0c;使各种设备之间的连接和数据传输变得非常方便快捷&#xff0c;它们不仅提供了强大的功能&#xff0c;还为我们的日常生活和工作带来了极大的便利…

青少年CTF-Misc(持续更新中)

FLAG&#xff1a;当觉得自己很菜的时候&#xff0c;就静下心来学习 专研方向:Web安全&#xff0c;CTF 每日emo&#xff1a;听一千遍反方向的钟&#xff0c;我们能回到过去吗&#xff1f; 1.StegoTXT&#xff1a; 解压缩文件。发现字母中存在覆盖。使用0宽隐写在线解密得到flag…

YOLOv8改进 | 2023主干篇 | EfficientViT替换Backbone(高效的视觉变换网络)

一、本文介绍 本文给大家带来的改进机制是EfficientViT&#xff08;高效的视觉变换网络&#xff09;&#xff0c;EfficientViT的核心是一种轻量级的多尺度线性注意力模块&#xff0c;能够在只使用硬件高效操作的情况下实现全局感受野和多尺度学习。本文带来是2023年的最新版本…

​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​

源代码&#xff1a; Lib/sqlite3/ SQLite 是一个C语言库&#xff0c;它可以提供一种轻量级的基于磁盘的数据库&#xff0c;这种数据库不需要独立的服务器进程&#xff0c;也允许需要使用一种非标准的 SQL 查询语言来访问它。一些应用程序可以使用 SQLite 作为内部数据存储。可…

量子算力引领未来!玻色量子出席第二届CCF量子计算大会

​8月19日至20日&#xff0c;中国计算机学会&#xff08;CCF&#xff09;主办的第二届CCF量子计算大会暨中国量子计算峰会&#xff08;CQCC 2023&#xff09;在中国合肥成功举办。本届大会以“量超融合&#xff0c;大国算力”为主题&#xff0c;设有量子计算软件、硬件、应用生…

【C++类模板对象做函数参数】

类模板实例化出的对象&#xff0c;向函数传参的方式 一共有三种传入方式&#xff1a; 指定传入的类型 — 直接显示对象的数据类型参数模板化 — 将对象中的参数变为模板进行传递整个类模板化 — 将这个对象类型 模板化进行传递 总结&#xff1a;比较广泛使用的是第一种&…

计算机网络(三)

&#xff08;十一&#xff09;路由算法 A、路由算法分类 动态路由和静态路由 静态路由&#xff1a;人工配制&#xff0c;路由信息更新慢&#xff0c;优先级高。这种在实际网络中要投入成本大&#xff0c;准确但是可行性弱。 动态路由&#xff1a;路由更新快&#xff0c;自动…

12/11

完善对话框&#xff0c;点击登录对话框&#xff0c;如果账号和密码匹配&#xff0c;则弹出信息对话框&#xff0c;给出提示”登录成功“&#xff0c;提供一个Ok按钮&#xff0c;用户点击Ok后&#xff0c;关闭登录界面&#xff0c;跳转到其他界面 如果账号和密码不匹配&#xf…