美文网首页
Scala入门系列之二--数组、元组、列表、集合、映射、迭代器数

Scala入门系列之二--数组、元组、列表、集合、映射、迭代器数

作者: 微生活_小阿楠 | 来源:发表于2020-04-08 13:09 被阅读0次

    传送门
    Scala入门系列之一--使用命令行往文件输入数据并读取数据
    Scala入门系列之二--数组、元组、列表、集合数据类型简述
    Scala入门系列之三--类和方法的创建以及命令行执行scala文件
    Scala入门系列之四--类成员的可见性(private)以及用value和value_=进行读取和修改
    Scala入门系列之五--主构造器和辅助构造器
    Scala入门系列之六--伴生对象和伴生类
    Scala入门系列之七--scala中的继承
    Scala入门系列之八--scala中的特质(trait),也称接口
    Scala入门系列之九--模式匹配两大法宝(match语句和case类)
    Scala入门系列之十--包
    Scala入门系列之十一--函数式编程基础
    Scala入门系列之十二--高阶函数
    Scala入门系列之十三--针对容器的操作(遍历/映射/过滤/规约操作)
    Scala入门系列之十四--使用IDEA编写Scala代码并Maven打包提交集群运行
    传送门

    一、数据类型

    1).数组

    //声明一个整型数组
    val intValueArr = new Array[Int](3)//声明一个长度为3的整型数组,
    val intValueArr1 = Array(1,2,3)
    //每个数组元素初始化为0
    intValueArr(0) = 1 //给第1个数组元素赋值为1
    intValueArr(1) = 2 //给第2个数组元素赋值为2
    
    
    

    2).元组

    • 如果需要在方法返回多个不同类型的对象,可用元组
    //元组是对多个不同类型对象的一种简单封装,最简单的方法就是把多个元素用
    //逗号分开并用圆括号包围起来
    
    val tuple = ("BigData",2020,25.0)
    print(tuple._1) ----> BigData //使用下划线“_”加上1,来访问元组的元素
    print(tuple._2) ----> 2020
    print(tuple._3) ----> 25.0
    
    
    

    3).序列(Sequence)--- 列表(List)

    • 列表:一种共享相同类型的不可变的对象序列。定义在scala.collection.immutable
    • 不同于java的java.util.List,scala的List一旦被定义,其值就不能改变,因此声明List时必须被初始化
    var strList = List("BigData","Hadoop","Spark")
    
    //列表有头部(head)和尾部(tail)的概念
    print(strList.head)------->"BigData"
    print(strList.tail)------->("Hadoop","Spark")
    
    //列表的插入(是新建一个列表)
    val otherList = "Apache"::strList //使用::或者+:,插在最后的用:+
    print(otherList) ---> ("Apache","BigData","Hadoop","Spark")
    
    
    

    3.1).序列(Sequence)--- 向量(Vector)

    • Vetor可以实现所有访问操作都是常数时间
    val vec1 = Vector(1,2) //插入方法于List一样
    
    

    v

    4).集合(Set)

    • 集合包括可变集和不可变集,分别位于scala.collection.mutable包和scala.collection.immutable包,缺省情况下创建的是不可变集
    //默认下,是不可变。不会报错是mySet的地址已经改变,指向新的Set,所以var不会报错,val报错(这里的var与val不是影响因素)
    var mySet = Set("Hadoop","Spark")
    mySet += "Scala"
    
    //可变集
    //set可变,则+=等效于在原有基础上新增一个元素。mySet的地址不变,还是指向原来的set。所以用val不会报错
    import scala.collection.mutable.Set
    val myMutableSet = Set("Database","BigData")
    myMutableSet += "Cloud"
    
    

    5).映射(Map)

    6).迭代器(Iterator)

    相关文章

      网友评论

          本文标题:Scala入门系列之二--数组、元组、列表、集合、映射、迭代器数

          本文链接:https://www.haomeiwen.com/subject/uhftmhtx.html