码迷,mamicode.com
首页 > 其他好文 > 详细

scala的Map

时间:2016-11-23 12:07:30      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:tab   cal   pac   yield   返回   映射   增加值   取值   操作   

package com.test.scala.test

object MapTest {
  
  
    def main(args: Array[String]): Unit = {
      
      //定义一个不可变的map
      var map=Map("apa"->50,"zhangsan"->75,"王五"->60);
      println(map("zhangsan"))//类似与java get取值
      
      //定义一个可变的map
      var scores=scala.collection.mutable.Map("apa"->50,"zhangsan"->75,"王五"->60);
      println(scores.getOrElse("apa", 0))
      
       //在可变map中增加值,或移除值
      scores+=("a"->45)//添加某个键
      scores-="王五";//移除某个键
      
      //迭代map
      //循环scores的建
      val key=scores.keys;
      for(i<-key)println(i)
      
      //单独循环scores的值
      val value=scores.values;
      for(i<-value)println(i)
      
      //循环scores的key 与value
      for((k,v)<-scores)println(k+"->"+v)
      
      //反转映射,将key与value对调控制
      val newScores=for((k,v)<-scores) yield (v,k)
      for((k,v)<-newScores)println(k+"->"+v)
      
      
      //元组,元组用()来定义,它可以用于返回值不是一个的情况的函数
      val yuanzu=(1,3,"444");
      println(yuanzu._2)
      
      //使用元组可以进行拉链操作,可以把多个值绑定在一起,并一起处理.可以配对
      var a1=Array(1,2,3)
      var a2=Array("A","B","C")
      var pairs=a1.zip(a2);
      for((k,v)<-pairs)println(k+"->"+v)
      
       //将对偶的的集合转换为
      var hh=a1.zip(a2).toMap
      for(i<-hh.values)println(i)
    }
    
  
}

 

scala的Map

标签:tab   cal   pac   yield   返回   映射   增加值   取值   操作   

原文地址:http://www.cnblogs.com/huzi007/p/6092780.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!