Set
一、Set基本介绍 set不能存储重复元素、不能保留顺序、默认用的是哈希
案例一:回顾java set
案例二: 创建不可变set集合和可变的set集合
var set1=Set(1,2,3)//不可变set集合
var set2=mutable.Set(1,2,3)//可变set集合
案例三: 集合操作(添加数据)
set1.+=(4)
set2.add(4)
案例四: set删除数据
var set3=set1.drop(1)
set2-=1
元组
元组可以理解为一个容器、这个容器可以存放不同的数据类型、可以承载很多元素数据、对数据没有过多的约束
案例一:元组的基本使用
val tuple: Tuple3[String, Int, Boolean] =("A",1,true)
println(tuple._1)//访问元素
println(tuple._2)
println(tuple._3)
for(i <- tuple.productIterator){
print(i+" ")
Map
案例一:
初识map可变集合和不可变集合
scala:【可变 : 无序】【不可变 : 有序】
var map1=Map("a"->1,"b"->2)
println(map1)
var map2=mutable.Map("a"->1,"b"->2)
println(map2)
案例二:Map 增删改查
//遍历
var map: mutable.Map[String, Int] = mutable.Map(("A",1),("B",2),("C",3))
for(v <- map){ // java编程套路
print(v+" ")
}
println()
for((k,v)<-map){
print("<"+k+" "+v+">")
}
println()
for(v<-map.keys){
print(v+" "+map.get(v).get+"|")
}
// 删除
map.remove("A")
map-=("B")
//增加元素
var map1= map + ("E"->4, "F"->5) // 这个方法 返回一个新的map
println(map1)
map += ("E"->4) //追加数据没有改变原有的内存地址
println(map)
//查找
println(map.getOrElse("A","error!"))
println(map.getOrElse("E","error!"))
println(map.contains("A"))
println(map.contains("E"))
println(map("A"))
println(map("E"))
结果:
1
error!
true
false
1
Exception in thread "main" java.util.NoSuchElementException: key not found: E