Scala 数组和元组

scala 专栏收录该内容
9 篇文章 0 订阅

1、定义数组

数组创建方式一:

var a1:Array[String] = new Array[String](3)
a1(0)="Jason"
a1(1)="Marie"
a1(2)="Jimmy"

注意:1、泛型使用方括号;2、数组元素访问使用圆括号。

数组创建方式二:

var a2=Array("Jason","Marie","Jimmy")

数组创建方式三:区间数组

var a3=Array.range(1,10)
// 输出: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
var a3=Array.range(1,10,2)
// 输出:Array[Int] = Array(1, 3, 5, 7, 9)

2、数组遍历

def main(args: Array[String]): Unit = {
val a=Array(8,6,5,7,1)
// 1、方式一 相当于java中的增强for循环
for (elem <- a){
   println(elem)
}

// 2、方式二 根据下标依次遍历即可
 for (i <- 0 until a.length) {
   println(a(i))
  }
}

3、元组定义

  • 元组与数组类似,但是数组中所有的元素必须是同一种类型,而元组则可以包含不同类型的元素。
  • 最多支持22个元素 (Tuple1~Tuple22)
  • 使用下划线“_"访问元素,“_1"表示第一个元素
//元组定义方式一
var tupleDemo =("hello",2,5,8,"world",'a')
println(tupleDemo)
println(tupleDemo._1)
println(tupleDemo._2) 
println(tupleDemo._3)
println(tupleDemo._4)
println(tupleDemo._5)
println(tupleDemo._6)

//迭代元组
tupleDemo.productIterator.foreach{x=> println("value:"+x)}

//元组声明方式二
var tp2 = new Tuple3("Mike", "123 ABC street", 58)

//元组声明方式三
def mike = "Mike" -> 5
println(mike)				//输出:(mike,5)
println(mike.getClass)		//输出:class scala.Tuple2

//拓展二维元组
def mike = "Mike" -> 5 -> 6
println(mike)				//输出:((mike,5),6)

//输出scala.Tuple2
mike.getClass

4、元组模式匹配

可以通过模式匹配来获取元组中的值并赋予对应的变量:

//定义元组
val tp1=("mike","andemen",18)
//将元组元素依次赋给三个变量
val(name, address, age) = tp1
println(name)
println(address)
println(age)

如果某些位置不需要赋值,则可以使用下划线代替:

val tp1=("mike","andemen",18)
val (name,_,_)=tp1
println(name)
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 1024 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值