Scala学习第三天 Tuple、Array、May与文件操作入门实战

来源:互联网 发布:农行总行待遇 知乎 编辑:程序博客网 时间:2024/06/05 15:15

信息来源于 DT大数据梦工厂微信公众账号:DT_Spark
DT大数据梦工厂群号:302306504王家林老师微信号:wangjialinandroid

1、Tuple 元组
Tuple是Scala的容器对象之一,元组中可以有很多的数据,索引是从_1开始,不同于Java的数组,是从0开始的,而且元组可以包含不同类型的元素,十分灵活。

def main(args: Array[String]): Unit = {    val triple = (100, "Scala", "Spark");    println(triple._1)    println(triple._2)    println(triple._3)   } }   //得到以下返回结果:100ScalaSpark

2、Array 数组
scala里面的数组和java里面的比较类似,但是又有些不同,数组的初始化方法比java里面多了一种方式,具体如下:

def main(args: Array[String]): Unit = {    val array = Array(1, 2, 3, 4, 5)     for (i <- 0 to (array.length - 1)) {      println("i = " + array(i));    }}//运行代码得到如下结果,打印出数组 array里的元素。i = 1i = 2i = 3i = 4i = 5

另一个简便的打印出数组array里元素的方法:

def main(args: Array[String]): Unit = {    val array = Array(1, 2, 3, 4, 5)    for (elem <- array) {         println(elem);    }}

3、Map 映射
Scala中的映射是key/value键值对的集合。任何值可以根据它的键进行检索。key唯一,但value不一定是唯一的。

def main(args: Array[String]): Unit = {    var ages = Map("Rocky" -> 27, "Spark" -> 5)    for ((k, v) <- ages) {      println("Key is " + k + ", value is " + v)    }  } //这段代码是打印出映射对应的key和value ,运行代码,得到以下结果: Key is Rocky, value is 27 Key is Spark, value is 5

如果不想打印出value,可以用占位符_,不代表具体名称,只是为变量占个位。

for ((k, _) <- ages) {      println("Key is " + k + ", value is " + v)    }  }

4、文件操作
1) 使用 scala.io包下的Source类读取硬盘上的具体文件,此处打印的是 d:\test.txt文件,读取每行的内容并打印到屏幕,代码如下所示:

import scala.io.Sourceobject Test {  def main(args: Array[String]): Unit = {    val file = Source.fromFile("d:\\test.txt")    for (line <- file.getLines()) {      println(line);    }  }}

Scala 深入浅出实战经典(1-64讲)完整视频、PPT、代码下载:

百度云盘:http://pan.baidu.com/s/1c0noOt6

腾讯微云:http://url.cn/TnGbdC

360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2

0 0
原创粉丝点击