Dt大数据梦工厂王家林老师 Scala实战详解之第3讲 Tuple、Array、Map与文件操作入门实战

来源:互联网 发布:udp编程bind函数的作用 编辑:程序博客网 时间:2024/05/17 18:11
package com.dt.scalaInAction.demo_003/** * 数组 */object ArrayOps {  def main(args: Array[String]): Unit = {    var array = Array(1,2,3,4,5);  //数组发的静态定义    类型为 Array[Int]        /**     * 遍历方式一     *///    for(index <- 0 until array.length ) println(array(index))        /**     * 遍历方式二(常用)     *///    for(e <- array) println(e)      }}





package com.dt.scalaInAction.demo_003/** * 元祖 */object TupleOps {    def main(args: Array[String]): Unit = {    var pair = (100, "Scala", "Spark")  //注意 鼠标上移变量pair 显示var pair: (Int, String, String) 这是Scala的类型推断//    println(pair._0); //注意:去元素是下标从1开始  ._0 会编译错误    println(pair._1)    println(pair._2)    println(pair._3)  }  }



package com.dt.scalaInAction.demo_003/** * Map */object MapOps {  def main(args: Array[String]): Unit = {    var entry = Map("John"->21,"Bell"->24)  //Map的静态定义    var entry: Map[String, Int]    /**     * 遍历k v  采用Tuple的方式遍历     */    for((k, v) <- entry) println("key="+k+";value="+v)        /**     * 遍历k 忽略v     */    for((k, _) <- entry) println("key="+k)   //(k, _) _为占位符      }}




package com.dt.scalaInAction.demo_003import scala.io.Source/** * 文件操作 */object FileOps {    def main(args: Array[String]): Unit = {        val file = Source.fromFile("E:\\projectTest\\1.txt")  //返回类型为 BufferedSource//        val file = Source.fromURL("http://spark.apache.org/")  //抓取网络信息        var lines = file.getLines  //var lines : Iterator[String]        for(line <- lines) println(line)     }}


0 0