学习进度-05

1、if条件表达式:

val x = 3
val a = if(x > 2) 1 else -1

2、for循环:
例如:
for(i <-2 to 5 ) println(i)
其中 “ 变量 <- 表达式 ” 部分被称为生成器
例如:for(i <- 1 to 5 if i%3==0) println(i)
使用该表达式,过滤出满足指定条件的结果,在例子中输出3的倍数

3、sc.textFiles() 与 sc.wholeTextFiles() 的区别

sc.textFile()是将path 里的所有文件内容读出,以文件中的每一行作为一条记录的方式,文件的每一行 相当于 列表 的一个元素,因此可以在每个partition中用for i in data的形式遍历处理数据。
sc.wholeTextFiles()返回的是[(key, val), (key, val)...]的形式,其中key是文件路径,val是文件内容,每个文件作为一个记录。这说明这里的 val 将不再是 list 的方式为你将文件每行拆成一个 list的元素,
而是将整个文本的内容以字符串的形式读进来,也就是说val = '...line1...\n...line2...\n'。
4、读写文件:

写入文本文件:import java.io.PrintWriter

                       val out = new PrintWriter("output,txt:)

                        for( i<- 1 to 5 ) out.println(i)      

                        out.close()

注:使用相对路径时,保存到当前目录下,将 1、2、3、4、5写入output,txt

读取文本文件:import scala.io.Source
                        val in = Source.fromFile("output.txt")
                        val lines = in.getLines
                        for(line <- lines) println(line)

posted on 2020-02-05 19:12  方木Fengl  阅读(176)  评论(1编辑  收藏  举报

导航