每天学一点kotlin--集合:set

author author     2023-04-12     298

关键词:

参考技术A ----《第一季Kotlin崛起:次世代Android开发 》学习笔记

总目录: 每天学一点 Kotlin ---- 目录
上一篇: 每天学一点 Kotlin -- 集合:MutableList
下一篇: 每天学一点 Kotlin -- 集合:MutableSet

1.1 根据集合类型的整体特性,Kotlin 中分为3种集合:
(1) 有序可重复: Array -- 数组
(2) 有序不重复: Set
(3) 无序不重复: Map

2.1 Set 特点: 大小固定,元素类型也固定

2.2 定义 Set:

2.3 Set 的两大特性:
(1) 包含关系: 如果集合A中所有的元素都在另一个集合B中,那么就说A是B的子集,也就是B包含A,或者A包含于B中。
(2) 两个集合的运算:
①交集:a.intersect(b)
②差集:a.subtract(b)
③并集:a.union(b)
④补集:a.union(b) - a.intersect(b)

2.4 举个栗子:

每天学一点kotlin--集合:array数组

...第一季Kotlin崛起:次世代Android开发》学习笔记总目录:每天学一点Kotlin----目录上一篇:每天学一点Kotlin--高阶函数下一篇:每天学一点Kotlin--集合:MutableList1.1根据集合类型的整体特性,Kotlin中分为3种集合:(1)有序可重复:Array-... 查看详情

每天学一点kotlin--函数:泛型函数

...第一季Kotlin崛起:次世代Android开发》学习笔记总目录:每天学一点Kotlin----目录上一篇:每天学一点Kotlin--函数:标准库函数下一篇:每天学一点Kotlin--函数:类型层级1.1泛型是指“通用的类型”,在面向对象中会经常用到。比如... 查看详情

每天学一点kotlin--字符串和字符

...第一季Kotlin崛起:次世代Android开发》学习笔记总目录:每天学一点Kotlin----目录上一篇:每天学一点Kotlin--控制流:循环下一篇:每天学一点Kotlin--函数:初次见面1.1同其他的语言一样,单个的符号或文字,称为字符,缩写为Char... 查看详情

每天学一点scala之高阶函数flatten

flatten    就是将多个集合展开,组合成新的一个集合。650)this.width=650;"src="https://s4.51cto.com/wyfs02/M02/A2/78/wKioL1mf8aeBnPvqAAEXVeDq2TU073.png"style="float:none;"title="001.png"alt="wKioL1mf8aeB 查看详情

每天学一点scala之内部类

1、 scala里同样可以定义内部类2、 每个外部类的对象的内部类,都是不同的类,因此,存数组时,要注意3、 内部类可以访问外部类的私有属性,反之不行package com.xej.learning.class_learning/**  * Created by&... 查看详情

每天学一点scala之闭包

定义函数在变量不处于其有效作用域时,还能够对变量进行访问,即为闭包;也就是说,变量超出了其作用域,还可以使用,就是闭包现象。可能针对的使用场景之一?比方说,年底了,公司针对每个部门的奖金是不同。比方说... 查看详情

每天学一点系列~“helloworld“的诞生

"HelloWorld"的诞生PartI、熟悉的"HelloWorld"PartII、翻译环境及翻译过程简介PartIII、预编译一、#系列指令二、删除注释三、添加行号和文件名标识PartIV、编译一、词法分析和符号汇总二、语法分析三、语义分析四、转汇编P... 查看详情

每天学一点scala之taketakerighttakewhile与filter

比较简单,直接上例子object takeWhileTest {   def main(args: Array[String]): Unit = {      val names = List("spark", 查看详情

每天学一点scala之try

参考文章:http://www.jianshu.com/p/0de79845eaa4Try[A]同样是一种容器。Option[A]也是一种容器Try[A]表示一种计算,       如果计算成功,返回是A的值如果出错的话,抛出异常ThrowableTry存在两个子类型:1、 Success[... 查看详情

每天学一点scala之lazy

特性:A、将一个变量声明为lazy,则只有第一次使用该变量时,才会进行初始化;B、 赖加载特性使用场景:使用于比较耗时的计算业务;如网络IO,磁盘IO等;marathon源码,与spark源码中同样大量使用了这种特性;Java中的赖加... 查看详情

每天学一点scala之匿名函数

1、 定义    如果一个函数没有名字的话,就是匿名函数了。只使用一次,并没有多次调用2、 匿名函数的使用场景将匿名函数,直接赋值给变量将匿名函数,作为函数的参数进行使用3、 匿名函数的几种... 查看详情

每天学一点scala之type

关键字type有两三种特性吧,用的最多的特性就是给类型起一个别名;如下例子所示:650)this.width=650;"src="https://s4.51cto.com/wyfs02/M01/9E/9B/wKiom1mS_w6SSRv9AACgYjhn7CU494.png-wh_500x0-wm_3-wmp_4-s_3975032556.png"title="001.png"alt="wKiom 查看详情

每天学一点scala之type

关键字type有两三种特性吧,用的最多的特性就是给类型起一个别名;如下例子所示:650)this.width=650;"src="https://s4.51cto.com/wyfs02/M01/9E/9B/wKiom1mS_w6SSRv9AACgYjhn7CU494.png-wh_500x0-wm_3-wmp_4-s_3975032556.png"title="001.png"alt="wKiom 查看详情

每天学一点scala之currying函数

1、Curring函数定义?    将原来接收两个参数的一个函数,转换为两个函数,第一个函数接收原先的第一个参数,然后返回接收原先第二个参数的第二个函数。在函数调用的过程中,就变为了两个函数连续调用的形... 查看详情

每天学一点docker-深入了解容器概念

什么是容器?容器是一个自包含,可移植,轻量级的软件打包技术。是应用程序在任何地方几乎以相同方式运行。开发人员在开发机上创建好容器,无需任何修改就能在虚拟机,云服务器或公有云主机上运行。 容器与虚拟机... 查看详情

每天学一点scala之方法与函数的区别

650)this.width=650;"src="https://s3.51cto.com/wyfs02/M00/9F/80/wKioL1mdl73AAkcDAABjOIeDLHM030.png-wh_500x0-wm_3-wmp_4-s_1809073055.png"style="float:none;"title="001.png"alt="wKioL1mdl73AAkcDAABjOIeDLH 查看详情

每天学一点scala之方法与函数的区别

650)this.width=650;"src="https://s3.51cto.com/wyfs02/M00/9F/80/wKioL1mdl73AAkcDAABjOIeDLHM030.png-wh_500x0-wm_3-wmp_4-s_1809073055.png"style="float:none;"title="001.png"alt="wKioL1mdl73AAkcDAABjOIeDLH 查看详情

每天学一点scala之option[a]

   经常在marathon源码和spark源码中看见Option[A]的身影,那它到底是用来干什么的呢?其实,Option就像是一个容器,一个箱子;Option[A]有两种结果:A、Some[A]表示容器不为空,存在A,然后就可以进行其他业务逻辑计算,... 查看详情