zoukankan      html  css  js  c++  java
  • Scala元组和映射

    1、map映射

    import scala.collection.mutable._//如果要定义一个map为可变的需要导入mutable包
        object helloworld {
          def main(args: Array[String]) {
    
            val map1 = scala.collection.immutable.Map[Int,String](100->"chenrong",200->"xiaofang");//定义map为不可变的
            println(map1(100));
    //        map1(100)="yu";
            println(map1(100));
    
    
            val map = HashMap[Int,String](1->"cr");//由于导入mutable包这里默认为可变的
            //这里的map的key和value的类型可以定义也可以不用定义
            map(1)="dr";
            println(map(1));
    
      }
    }
    
    
    

    2、定义map

    //定义map的方式
            val map2 = Map[Int,Int]();
    
            val map3 = new mutable.HashMap[Int,Int]();

    3、对map的操作

    import scala.collection.mutable
    import scala.collection.mutable._//如果要定义一个map为可变的需要导入mutable包
        object helloworld {
          def main(args: Array[String]) {
    
            val map1 = scala.collection.immutable.Map[Int,String](100->"chenrong",200->"xiaofang");//定义map为不可变的
            println(map1(100));
    //        map1(100)="yu";
            println(map1(100));
    
    
            val map = HashMap[Int,String](1->"cr");//由于导入mutable包这里默认为可变的
            //这里的map的key和value的类型可以定义也可以不用定义
            map(1)="dr";
            println(map(1));
    
            //定义map的方式
            val map2 = Map[Int,Int]();
    
            val map3 = new mutable.HashMap[Int,Int]();
    
            //给map添加成员
            map +=(66->"hhhh",88->"yy");
            map.+=(22->"hh",44->"kkk");
    
            println(map);
            //删除map成员,通过key来删除成员
            map.-=(22);
            println(map);
    
            //通过连接可以将不可变的map改变成可变的map
            val mutMap = map1 +(10->"uuu");
            println(map1);
            println(mutMap);//通过连接的方式将map1转变成为可变的新的map集合
    
            //+ - 产生的是一个新的映射,原来的映射不会改变
            //+= -= 是在原来的map基础上进行修改,不会产生新的集合
    
            val subMap = map1 - 10;
            println(subMap);
            println(map1);
    
    
    
      }
    }
    

    3、map映射的迭代

    import scala.collection.mutable
    import scala.collection.mutable._//如果要定义一个map为可变的需要导入mutable包
    import scala.collection.Map
        object helloworld {
          def main(args: Array[String]) {
    
         //map 的迭代
            val map = Map[Int,String](1->"aa",2->"bb");
            for((k,v)<-map) println(k+"===="+v);
            println(map.keySet);//获取所有的key集合,为一个set集合
            println(map.values);//获取所有的values集合
            /*1====aa
              2====bb
              Set(1, 2)
              MapLike.DefaultValuesIterable(aa, bb)*/
      }
    }
    

    4、元组

    
        object helloworld {
          def main(args: Array[String]) {
    
            //定义一个元组
            val t = (1,"tom",2);
            println(t);
            //访问元组的元
            //注意元组的元的下标从1开始而不是从0开始
            println(t._1);
            println(t._2);
    
            //直接取出元组的分量
            val (a,b,c) =t;
            println(a+"==="+b+"==="+c);
    
    
    
      }
    }
    
    欢迎关注我的公众号:小秋的博客 CSDN博客:https://blog.csdn.net/xiaoqiu_cr github:https://github.com/crr121 联系邮箱:rongchen633@gmail.com 有什么问题可以给我留言噢~
  • 相关阅读:
    The provided URI scheme 'http' is invalid; expected 'https'. Parameter name: via
    WCF传递Stream时,同时传递其它参数的问题
    DotNet NB 学习公众号
    军师旅团营连排班各有多少人
    OAuth 2.0学习
    人生三境界
    Mac OS安装Windows各版本时注意事项(2014年后的Mac机相信会有这些问题)
    C#中winform使用相对路径读取文件的方法
    Sql Server Report Service 的部署问题(Reporting Service 2014為什麼不需要IIS就可以運行)
    Reporting Services报表常用的URL参数
  • 原文地址:https://www.cnblogs.com/flyingcr/p/10327108.html
Copyright © 2011-2022 走看看