一数组:
1.不可变数组:
定义:
val arr1 = new Array[Int](10) val arr1 = Array(1, 2)增加元素:
val arr1=Array(1,2,3,4) val arr2: Array[Int]=arr1 :+ 5 //数组后面添加元素 val arr3: Array[Int]=0 +: arr2 //数组前面增加元素2.可变数组:
定义:
import scala.collection.mutable.ArrayBuffer //需要导入 val arr4=ArrayBuffer(22,33,44)增加元素:
val arr4=ArrayBuffer(22,33,44) arr4+=55//数组后面添加元素 11 +=: arr4 //数组前面添加元素 arr4.append(88,99)//后面添加元素 arr4.prepend(1,2) //前面添加元素 for(i<-arr4){ println(i) }3.多维数组:
val arr = Array.ofDim[Double](3,4)二List(数据有序,不重复)
1.不可变List:
val list=List(1,2,3,4) val list1=5::list//::从右往左增加元素 val list2=list :+ 6 :+7 :+ 8 // 增加元素 // 5 +: list (前面增加元素) // list +: list (后面增加元素) val list3=list1:::list2 //::: 将两个List合并 或者++2.可变List:
import scala.collection.mutable.{ArrayBuffer, ListBuffer}//需要导入 val listBuffer=ListBuffer(3,4,5) listBuffer.append(6)//后面添加 listBuffer.prepend(1)//前面添加 listBuffer += 7 // +=后面添加 2 +=: listBuffer // +=: 前面添加 listBuffer.foreach(print)三.Set(数据无序,不重复)
因为Set是无序的,所以无所谓前面添加元素,还是后面添加元素
import scala.collection.mutable object Test_Set { def main(args: Array[String]): Unit = { val set=mutable.Set(4,5,6,7) set += 3 //添加 set -= 7 //删除 set.add(2) //添加 set.remove(6) //删除 set.foreach(print) } }四.Map集合(数据按key有序)
key-value键值对
1.不可变Map:
val map=Map("a"->1,"b"->2,"c"->3) for(k<- map.keys){ println(s"key= $k value= ${map.get(k).get}") // 因为get访问Map集合的时候,会返回一个特殊类型Option选项 // Option中包含有值Some 和无值:None //map.get(k)若是Some类型的,再进一步调用get函数,取得key所对应的value }2.可变的Map:
package scala.ssy.Learning.Six import scala.collection.Map import scala.collection._ object Test_Map { def main(args: Array[String]): Unit = { val map=mutable.Map("b"->2,"c"->3,"d"->4) val map1=mutable.Map("b"->3,"c"->1,"d"->2,"e"->5) map.put("a",1) map.remove("d") map1 ++= map //map1会把map中没有的元素并入,然后有的值会用map中的更新 map.foreach(print) println() map1.foreach(print) } }五.Tuple(将多个无关的数据封装成一个整体)
package scala.ssy.Learning.Six object Test_Tuple { def main(args: Array[String]): Unit = { val tuple:(Int,String,Boolean)=(1,"hello",true) println(tuple._1) println(tuple._2) println(tuple._3) for(elem<- tuple.productIterator){//迭代器访问 println(elem) } } }
Scala的学习1-数组和集合类型的总结
最新推荐文章于 2024-06-15 01:14:41 发布
本文深入介绍了Scala编程中常见的数据结构,包括不可变数组、可变数组、多维数组、不可变List、可变List、Set以及Map的使用方法,详细阐述了各种数据结构的创建、元素添加与删除等操作。此外,还提到了Tuple用于封装多个无关数据的方式。
239

被折叠的 条评论
为什么被折叠?



