当前位置: 首页 > news >正文

kotlin集合框架

1、集合框架的接口类型对比

 2、不可变和可变List

fun main() {//  不可变List - 不能删除或添加元素val intList: List<Int> = listOf(1,2,3)intList.forEach{println(it) // 1 2 3}println("===============================")// 可变List - 可以删除或添加元素val mutableList = mutableListOf(1,2,3)mutableList.add(4)mutableList.remove(0)mutableList.forEach{println(it) // 2 3 4}
}

3、可变和不可变Map

fun main() {//  不可变Mapval m1:Map<String, Any> = mapOf("name" to "lxc", "age" to 18)println(m1) // {name=lxc, age=18}// 可变mapval m2:MutableMap<String, Any> = mutableMapOf("name" to "lxc", "age" to 18)// 修改元素m2["name"] = "sx"println(m2) // {name=sx, age=18}// 添加元素m2["address"] = "china"println(m2) // {name=sx, age=18, address=china}
}

4、新增或删除便捷写法

// 运算符可重载,可以使用运算符新增或删除集合元素。以后记录
fun main() {val intlist = mutableListOf<Int>()// 循环往集合中添加元素for (i in 0..10) {intlist += i}println(intlist) // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]// 循环删除集合元素for (i in 0..10) {intlist -= i}println(intlist) // []
}

5、Pair

kotlin中Pair是一个数据类(定义类似python中的元组)。

public data class Pair<out A, out B>(public val first: A,public val second: B
) : Serializable {/*** Returns string representation of the [Pair] including its [first] and [second] values.*/public override fun toString(): String = "($first, $second)"
}

定义

fun main() {val pair = Pair("name","lxc")println(pair) // (name, lxc)val p2 = "name" to "lxc"println(p2) // (name, lxc)
}

取值

fun main() {// 调用方法取值val pair = Pair("name","lxc")println(pair.first) // nameprintln(pair.second) // lxc// 解构取值val (name,age) = pairprintln("$name, $age") // name, lxc
}

6、总结

相关文章:

kotlin集合框架

1、集合框架的接口类型对比 2、不可变和可变List fun main() {// 不可变List - 不能删除或添加元素val intList: List<Int> listOf(1,2,3)intList.forEach{println(it) // 1 2 3}println("")// 可变List - 可以删除或添加元素val mutableList mutableListO…...

服务器(Linux系统的使用)——自学习梳理

root表示用户名 后是机器的名字 ~表示文件夹&#xff0c;刚上来是默认的用户目录 ls -a 可以显示出隐藏的文件 蓝色的表示文件夹 白色的是文件 ll -a 查看详细信息 total表示所占磁盘总大小 一般以KB为单位 d开头表示文件夹 -代表文件 后面得三组rwx分别对应管理员用户-组…...

竞赛选题 python+opencv+深度学习实现二维码识别

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; pythonopencv深度学习实现二维码识别 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;3分创新点&#xff1a;3分 该项目较为新颖&…...

Java读取指定 JAR 包路径中的 git.properties 文件

Java读取指定 JAR 包路径中的 git.properties 文件 在上述代码中&#xff0c;首先打开 JAR 文件&#xff0c;获取 git.properties 文件的 JarEntry 对象&#xff0c;如果存在该条目&#xff0c;就获取其输入流进行后续的读取和处理。具体的读取和处理逻辑需要根据您的实际需求在…...

逻辑回归(Logistic Regression)及其在机器学习中的应用

&#x1f680;时空传送门 &#x1f50d;逻辑回归原理&#x1f4d5;Sigmoid函数&#x1f388;逻辑回归模型 &#x1f4d5;损失函数与优化&#x1f388;损失函数&#x1f680;优化算法 &#x1f50d;逻辑回归的应用场景&#x1f340;使用逻辑回归预测客户流失使用scikit-learn库实…...

【计算机视觉】人脸算法之图像处理基础知识【七】

直方图均衡化 直方图均衡化是一种常用的图像处理技术&#xff0c;用于改善图像的对比度&#xff0c;特别是在图像的细节被埋没在暗部或亮部区域时。通过重新分配图像的像素强度值&#xff0c;使得图像的整体对比度增强&#xff0c;从而让更多的细节变得可见。 import cv2 imp…...

家政预约小程序14权限配置

目录 1 创建用户2 创建角色3 启用登录4 实现退出总结 我们现在小程序端的功能基本开发好了&#xff0c;小程序开发好之后需要给运营人员提供管理后台&#xff0c;要分配账号、配置权限&#xff0c;我们本篇就介绍一下权限如何分配。 1 创建用户 在微搭中&#xff0c;用户分为内…...

解决 vue 项目一直出现 sockjs-node/info?t=问题

其实如果是在开发环境&#xff0c;应该是开发的时候网络环境变更导致&#xff0c;比如你切换无线网络&#xff0c;导致开发服务器的IP地址换了&#xff0c;这样开发服务器会不知道如何确定访问源。开发环境中关闭npm dev server&#xff0c;然后重新npm run serve重新构建服务环…...

麒麟信安系统关闭core文件操作

在使用麒麟信安系统时&#xff0c;如果应用程序运行过程中崩溃了&#xff0c;此时并不会导致内核崩溃&#xff0c;只会在tmp目录下产生崩溃数据&#xff0c;如下图 不过tmp目录下的分区容量有限&#xff0c;当崩溃的应用core文件过大时将会占用tmp空间&#xff0c;导致tmpfs分区…...

微信小程序轮播图

效果图 详情可见 微信小程序 参照&#xff1a;swiper | uni-app官网 代码&#xff1a; <!--轮播图-- > <swiper interval"2000" autoplay"true" circular"true" style"height: 300px;"><swiper-item style&qu…...

redisson WRONGPASS invalid username-password pair or user is disable

1、技术架构&#xff1a;若依微服务框架 <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2021.1</version></dependency> <dependency><…...

QT拖放事件之一:初识拖放4大事件处理函数

0、拖放 两个动作,合在一起称之为拖放事件; 拖:就是拖着走; 放:就是拖着走,然后松开鼠标了,释放了,这就是放; 注意:放:拖着的东西要放在什么地方??? 假如,我将一个记事本拖着跑,然后放到一个Widget窗口上,那么为了使得Widget能感知相应的事件(拖着进入事件…...

使用Python进行数据可视化:从基础到高级

使用Python进行数据可视化:从基础到高级 数据可视化是数据分析过程中不可或缺的一部分,通过图形化的方式展示数据,可以更直观地发现数据中的趋势和模式。Python凭借其丰富的库和强大的功能,成为数据可视化的首选编程语言。本文将介绍数据可视化的基础概念、常用的Python库…...

【十二】图解 Spring 核心数据结构:BeanDefinition

图解 Spring 核心数据结构&#xff1a;BeanDefinition 简介 使用spring框架的技术人员都知道spring两个大核心技术IOC和AOP&#xff0c;随着投入更多的时间去学习spring生态&#xff0c;越发觉得spring的发展不可思议&#xff0c;一直都是引领着Java EE的技术变革&#xff0c;这…...

速盾:阿里云ddos黑洞是怎么回事?

阿里云ddos黑洞是一种防御分布式拒绝服务&#xff08;DDoS&#xff09;攻击的安全机制。DDoS攻击是指利用大量的合法请求占用目标服务器的资源&#xff0c;从而使服务器无法正常响应合法用户的请求。为了应对这种攻击&#xff0c;阿里云引入了黑洞机制。 黑洞机制是一种主动防…...

File文件转Blob文件,临时路径浏览器可查看

fileToBlob (file) { var reader new FileReader(); reader.readAsArrayBuffer(file); reader.onload function (event) { let blob new Blob([event.target.result], { type: file.type }); //{ type: file.type } 预览blob发现乱码可能是type不对 要获取file文件的type …...

区块链行业DDOS防护痛点在哪

区块链行业DDOS防护痛点在哪?随着区块链技术的迅猛发展&#xff0c;其应用场景已经从最初的数字货币扩展到了金融、供应链、物联网等多个领域。然而&#xff0c;随着区块链行业的快速崛起&#xff0c;其所面临的网络安全威胁也日益严重&#xff0c;尤其是DDoS&#xff08;分布…...

浏览器自带的IndexDB的简单使用示例--小型学生管理系统

浏览器自带的IndexDB的简单使用示例--小型学生管理系统 文章说明代码效果展示 文章说明 本文主要为了简单学习IndexDB数据库的使用&#xff0c;写了一个简单的增删改查功能 代码 App.vue&#xff08;界面的源码&#xff09; <template><div style"padding: 30px&…...

2024年计算机专业还值得选吗?

个人认为可以 一、就业前景广阔 市场需求旺盛&#xff1a;随着数字化和信息化的快速发展&#xff0c;计算机技术已经渗透到各个行业和领域。无论是传统制造业、金融、医疗&#xff0c;还是新兴的互联网、人工智能等领域&#xff0c;都离不开计算机专业人才的支持。因此&#x…...

JSON.parse(JSON.stringify())导致的响应式属性丢失

console.log("formdata赋值前", this.formdata);console.log("row",row);console.log("row序列化后", JSON.parse(JSON.stringify(row)));this.formdata JSON.parse(JSON.stringify(row)); console.log("formdata赋值后", this.formd…...

抖音音频高效提取工具:从繁琐操作到一键解决方案

抖音音频高效提取工具&#xff1a;从繁琐操作到一键解决方案 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖…...

如何快速配置TranslucentTB:Windows任务栏美化终极教程

如何快速配置TranslucentTB&#xff1a;Windows任务栏美化终极教程 【免费下载链接】TranslucentTB A lightweight utility that makes the Windows taskbar translucent/transparent. 项目地址: https://gitcode.com/gh_mirrors/tr/TranslucentTB 想要让Windows任务栏变…...

不伤身的酒是智商税?这款轻养新标杆打破偏见

1.当“喝酒伤身”成为共识&#xff0c;谁在挑战这个铁律&#xff1f;中国人喝酒的历史&#xff0c;几乎和文明史一样长。但“喝酒伤身”这四个字&#xff0c;也像影子一样&#xff0c;从未离开过酒桌。每一次举杯&#xff0c;耳边总有人念叨&#xff1a;“少喝点”“伤肝”“伤…...

【等保三级Java安全加固实战指南】:20年专家亲授7大高危漏洞修复清单与合规落地路径

第一章&#xff1a;等保三级Java安全加固的合规基线与实施全景图等保三级对Java应用系统提出了覆盖身份鉴别、访问控制、安全审计、通信保密性、代码安全及运行环境防护等多维度强制性要求。其合规基线并非单一技术点的叠加&#xff0c;而是以《GB/T 22239-2019 信息安全技术 网…...

YOLOFuse实战案例:如何利用红外+RGB融合提升森林火情监测精度

YOLOFuse实战案例&#xff1a;如何利用红外RGB融合提升森林火情监测精度 1. 森林火情监测的痛点与挑战 森林火灾是全球性的生态灾难&#xff0c;每年造成巨大经济损失和生态破坏。传统监测手段主要依赖可见光摄像头和人工巡查&#xff0c;存在明显局限性&#xff1a; 夜间失…...

Qwen3-Reranker-8B开源大模型:支持HuggingFace Transformers原生加载

Qwen3-Reranker-8B开源大模型&#xff1a;支持HuggingFace Transformers原生加载 如果你正在构建一个智能搜索系统、问答机器人或者文档分析工具&#xff0c;那么“重排序”这个环节你一定不陌生。简单来说&#xff0c;它就像一个智能裁判&#xff0c;当你的检索系统从海量文档…...

Graphormer开源模型部署教程:3.7GB小模型+RTX4090一键启动分子建模服务

Graphormer开源模型部署教程&#xff1a;3.7GB小模型RTX4090一键启动分子建模服务 1. 项目介绍 Graphormer是一种基于纯Transformer架构的图神经网络模型&#xff0c;专门为分子图&#xff08;原子-键结构&#xff09;的全局结构建模与属性预测而设计。这个3.7GB的小模型在OG…...

一篇帮你搞定Arrays工具类!!!

一、引言最近在刷算法题的时候&#xff0c;用到了很多次Arrays的方法&#xff0c;因此&#xff0c;写一篇博客来整理一下相关用法二、介绍java.util.Arrays 是 Java 提供的数组操作工具类&#xff0c;包含了数组排序、查找、复制、比较、打印、填充等常用静态方法&#xff0c;无…...

5个技巧掌握DINO注意力可视化:从入门到模型可解释性分析

5个技巧掌握DINO注意力可视化&#xff1a;从入门到模型可解释性分析 【免费下载链接】dino PyTorch code for Vision Transformers training with the Self-Supervised learning method DINO 项目地址: https://gitcode.com/gh_mirrors/di/dino 视觉模型可解释性已成为人…...

快手数据采集引擎:无水印解析与多源内容整合工具

快手数据采集引擎&#xff1a;无水印解析与多源内容整合工具 【免费下载链接】kuaishou-crawler As you can see, a kuaishou crawler 项目地址: https://gitcode.com/gh_mirrors/ku/kuaishou-crawler 价值定位&#xff1a;重新定义短视频数据采集标准 在数字内容分析与…...