首页 > 代码库 > Scala中数组的创建及实例化
Scala中数组的创建及实例化
Scala创建以及实例化的方式:
//创建一个长度为3的字符串数组,并逐个赋值,然后打印输出结果 val greetStrings = new Array[String](3) greetStrings(0)="Hello" greetStrings(1)="," greetStrings(2)="world\n" for(i <- 0 to 2){ print(greetStrings(i)) }注意:Scala中访问数组中某个元素使用的是(),例如greetStrings(0),而不是像java中使用的是[]访问。
同时,实例化数组还可以使用以下方式
val numNames = Array("zero","one","two") numNames.foreach(numName =>println(numName)) val numNames2 = Array.apply("zero","one","two","four") numNames2.foreach(numName2 => println(numName2))Scala数组是一个所有对象都共享相同类型的可变序列。比方说Array[String]仅包含String。尽管实例化之后你无法改变Array的长度,它的元素值却是可变的。因此,Array是可变的对象。
说到共享相同类型的不可变对象序列,Scala的List类才是。和数组一样,List[String]包含的仅仅是String。Scala的List,scala.List,不同于Java的java.util.List,总是不可变的(而Java的List可变)因为List是不可变的,他们表现得有些像Java的String:当你在一个List上调用方法时,似乎这个名字指代的List看上去被改变了,而实际上它只是用新的值创建了一个List并返回。
List有个叫“:::”的方法实现叠加功能。List最常用的操作符是发音为“cons”的‘::’。Cons把一个新元素组合到已有List的最前端,然后返回结果List
例如:
val onetwo = List(1,2) val threefour = List(3,4) val onetofour = onetwo:::threefour println(onetofour) val zerototwo = 0::onetwo println(zerototwo)tuple。与列表一样,元组也是不可变的,但与列表不同,元组可以包含不同类型的元素。而列表应该是List[Int]或List[String]的样子,元组可以同时拥有Int和String。
一旦你已经实例化了一个元组,你可以用点号,下划线和一个基于1的元素索引访问它。
val tuple = (12,"hello,world",'c',23.4) println(tuple._1) println(tuple._2) println(tuple._3) println(tuple._4)
Scala中数组的创建及实例化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。