Scala-元组操作

package com.bigdata

object TupleMapO {
  def main(args: Array[String]): Unit = {

    // 元组:Tuple,就是由()包起来,和数据库中一条记录概念类似

    val t2 = (1,"xiaoming","男",23,"高新区")
    println(t2._1) // 获取tuple第一个元素
    println(t2._2) // 获取tuple第二个元素

    // Tuple举列:求List中a的长度,元素求和,元素的平方和
    // 设计成一个tuple(长度, 元素求和, 元素平方和)
    val a = List(1,2,3,4)
    def sumSq(in:List[Int]) = in.foldLeft((0,0,0))((t,v) => (t._1+1,t._2+v,t._3+v*v))
    println(sumSq(a))

    // Map<K,V>
    val map1 = Map(1 -> "david",3 ->"lisa")
    println(map1(1))
    println(map1.contains(1)) // 判断Map中包含某个元素
    println(map1.keys) // 获取map中所有的key
    println(map1.values) // 获取map中所有的values
    val map2 = map1 + (2 -> "xiaoming") // 向map中添加一个元素
    println(map2)
    val map3 = map1 - 1 // 向map中删除一个元素
    println(map3)
    val map4 = map1 ++ List(4 -> "lily",5 ->"lucy") // 向map添加多个元素
    println(map4)
    val map5 = map4 -- List(2,3) // 向map删除多个元素
    println(map5)

  }

}

猜你喜欢

转载自www.cnblogs.com/shimingjie/p/10374528.html