简介
与列表一样,元组也是不可变的,但与列表不同的是元组可以包含不同类型的元素。
元组的值是通过将单个的值包含在圆括号中构成的。例如:
val t = (1, 3.14, "Fred")
也可以使用以下方式来定义:
val t = new Tuple3(1, 3.14, "Fred")
元组的实际类型取决于它的元素的类型,比如 (99, “runoob”) 是 Tuple2[Int, String]。 (‘u’, ‘r’, “the”, 1, 4, “me”) 为 Tuple6[Char, Char, String, Int, Int, String]。
目前 Scala 支持的元组最大长度为 22。
常见操作
//元组的定义
scala> ("hello","china","beijing")
res23: (String, String, String) = (hello,china,beijing)
scala> ("hello","china",1)
res24: (String, String, Int) = (hello,china,1)
scala> var tuple=("Hello","China",1)
tuple: (String, String, Int) = (Hello,China,1)
//访问元组内容
scala> tuple._1
res25: String = Hello
scala> tuple._2
res26: String = China
scala> tuple._3
res27: Int = 1
//通过模式匹配获取元组内容
scala> val (first, second, third)=tuple
first: String = Hello
second: String = China
third: Int = 1
遍历操作
object Test {
def main(args: Array[String]) {
val t = (4,3,2,1)
t.productIterator.foreach{ i =>println("Value = " + i )}
}
}
忠于技术,热爱分享。欢迎关注公众号:java大数据编程,了解更多技术内容。