- 1、本文档共237页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.4.3 集 运行结果: Head of fruit : apples Tail of fruit : Set(oranges, pears) Check if fruit is empty : false Check if nums is empty : true 3.4.3 集 同时可以使用 Set.min方法找到最小值和 Set.max方法找出集合中可用元素的最大值。具体示例如代码 3-55。 代码3-55 3.4.3 集 运行结果: Min element in Set(5,6,9,20,30,45) : 5 Max element in Set(5,6,9,20,30,45) : 45 3.4.3 集 此外,可以使用Set. 方法或Sersect方法来查找两个集合之间的公共值。具体示例如代码 3-56。 代码3-56 3.4.3 集 运行结果: num1.(num2) : Set(20, 9) ersect(num2) : Set(20, 9) 3.4.3 集 3.连接集Set 可以使用++运算符或Set.++()方法来连接两个或多个集合,但在添加集时,将删除重复元素。连接两个集合的示例如代码 3-57所示。 代码3-57 3.4.3 集 运行结果: fruit1 ++ fruit2 : Set(banana, apples, mangoes, pears, oranges) fruit1.++(fruit2) : Set(banana, apples, mangoes, pears, oranges) 3.4.4 映射 Scala映射是键/值对的集合。任何值都可以根据其键来检索。键在映射中是唯一的,但是值不一定是唯一的。映射也被称为哈希表。有两种映射,不变的和可变的。可变和不可变对象之间的区别是,当对象是不可变时,对象本身就不能被改变。默认情况下,Scala使用不可变映射。如果想要使用可变映射,就必须导入scala.collection.mutable.Map包。 3.4.4 映射 1.创建映射 创建一个不可变映射: 如果要获取映射中的值,可以通过键来获取,比如: 通过red这个键,可以获得值#FF0000。因为定义的是不可变映射,所以无法更新映射中的元素的,也无法增加新的元素。 scala val colors = Map(red - #FF0000, azure - #F0FFFF, peru - #CD853F) colors: scala.collection.immutable.Map[String,String] = Map(red - #FF0000, azure - #F0FFFF, peru - #CD853F) scala println(colors(red)) #FF0000 3.4.4 映射 如果要更新映射的元素,就需要定义一个可变的映射。 //导入Map包 scala import scala.collection.mutable.Map import scala.collection.mutable.Map //定义可变映射 scala val colors2 = Map(red - #FF0000, azure - #F0FFFF, peru - #CD853F) colors2: scala.collection.mutable.Map[String,String] = Map(azure - #F0FFFF, red - #FF0000, peru - #CD853F) 代码3-58 3.4.4 映射 //更改映射键值对 scala colors2(red ) = #9C661F //添加映射键值对 scala colors2(green) =#00FF00 //输出映射键值对 scala for ((k,v) - colors2) printf(( %s , %s)\n,k,v) ( green , #00FF00) ( azure , #F0FFFF) ( red , #9C661F) ( peru , #CD853F) 续代码3-58 3.4.4 映射 如果要将一个键值对添加到映射,可以使用运算符+。 //定义一个空映射 scala var A:Map[Char,Int] = Map() A: Map[Char,Int] = Map() //通过运算
文档评论(0)