Dream------scala--Tuple、Array、Map与文件操作

1、Tuple(元组)

  一般使用中,假设一个函数返回多个值,我们可以使用tuple接受这个(val (x,y) = myfunction)

package com.wls.scala.hello

/**
 * Created by wls on 2015年8月12日21:31:56.
 */
object TupleOps {

  def main(args : Array[String]): Unit ={
    //可以放任意多个元素-------------scala一个强大能力,类型推到,可以根据值来判断变量的类型(比如:100他会识别为int,Spark他会识别为String)
    val triple = (100,"Spark","Scala")
    //索引从1开始,不是从0开始
    println(triple._1)
    println(triple._2)
    println(triple._3)
    //输出:100
    //      Spark
    //      Scala
  }
}

  

2、Array

  

object ArrayOperations {

  //数组的声明
  val array = Array(1,2,3,4,5)
  //数组的遍历(注意until和to的区别,to是闭区间,until是左闭右开)
    for(i <- 0 until array.length){
      println(array(i))
    }
  //一般这个用的比较多
  for(elem <- array){
    println(elem)
  }
}

3、Map

  

object MapOperations {

  def main(args : Array[String]): Unit ={
    //声明一个空的map
    var myMap :Map[Int,String] = Map()
    //给map赋值
    myMap += (1 -> "wlssss")

    //声明一个初始化的map
    val ages = Map("Rocky" -> 27 ,"wls" -> 26)
    //遍历map----(key,value)就可以看成是一个Tuple
    for((key,value) <- ages){
      println("Key is "+key +",value is "+ value)
    }  //"_"是占位符,这种写法只能引用k,取不到value的
    for((k,_) <- ages ){
      println("Key is " + k)
    }
  }
}

4、文件

//需要引入这个包
import scala.io.Source

/**
 * Created by Administrator on 2015/8/12.
 */
object FileOps {

  def main(args : Array[String]): Unit ={
    //读取本地文件
    val file = Source.fromFile("E:/data/apache.org/index.html")
    val fileURL = Source.fromURL("http://www.cnblogs.com/wangliansong/")
    //按行读取文件,并输出,实际上就是输入文件内容,并且按原来的行格式
    for(line <- file.getLines()){
      println(line)
    }
    //会打印出这个网页的内容
    for(lineURL <- fileURL.getLines()){
      println(lineURL)
    }
  }
}

  

  

相关来源:

DT大数据梦工厂,微信公众号是:DT_Spark,每天都会有大数据实战视频发布,请您持续学习。
相关资料:
scala深入浅出实战经典完整视频、PPT、代码下载:
百度云盘:http://pan.baidu.com/s/1c0noOt6
腾讯微云:http://url.cn/TnGbdC
360云盘:http://yunpan.cn/cQ4c2UALDjSKy  访问密码45e2

  

时间: 2024-11-13 19:41:01

Dream------scala--Tuple、Array、Map与文件操作的相关文章

王家林亲传《DT大数据梦工厂》第三讲Tuple、Array、Map与文件操作入门实战

你想了解大数据,你想成为年薪百万吗?那你还等着什么,快点来吧!跟着王家林老师学习spark大数据 第三讲Tuple.Array.Map与文件操作入门实战 Tuple object TupleOps  { def  main (args: Arrag[string]): Unit = { val triple = (100,”Scala”,”Spark”) printIn(triple._1) printIn(triple._2) } } Array object ArrayOperations

003-Tuple、Array、Map与文件操作入门实战

003-Tuple.Array.Map与文件操作入门实战 Tuple 各个元素可以类型不同 注意索引的方式 下标从1开始 灵活 Array 注意for循环的until用法 数组的索引方式 上面的for是下标索引(繁琐用的不多) 下面的for是增强for循环的元素遍历索引(推荐) Map 注意左边是Key,右边是Value _(下划线也可以作为占位符,形成结构,但无名称不可以访问) 文件操作 进行了Source包的引入 .fromFile() getLines 使用了Iterator 欢迎广大爱好

[原创]Scala学习:Tuple,Array,Map ,文件操作

1.Tuple:元祖.是一个有用的容器对象. 1)特点:  ① 元祖是不可变的,即,当声明完了一个元祖,那么它的长度就不可以在改变:  ② 元祖可以包含不同类型的数据,对象:   ③ 索引是从 '_1' 开始,读取元祖中的内容 ④标识:' () ' 2)代码 1 //元祖 2 def doTuple() { 3 //'()' 定义元祖 4 val pair = (100, "scala", "spark") //元祖的类型val pair: (Int, String

03Scala学习: Tuple、Array、Map与文件操作入门实战

一 Tuple 元祖 在sclal中有用的容器对象是元祖: Tuple,与列表一样,元素也是不可变的,但与列表不同,在一个元祖可以包含不同类型的元素.所以在scal用的非常多.  def main(args: Array[String]): Unit = { val triple = (100, "Scala", "Spark"); println(triple._1) println(triple._2) println(triple._3) } }      

Scala编程入门---Map与Tuple

创建Map //创建一个不可变的Map val ages = Map("Leo" -> 30,"Jen" ->25,"Jack" ->23) ages("Leo") =31 //创建一个可变的Map val ages =scala.collection.mutable.Map("Leo" ->30,"Jen" ->25,"Jack" -&

Scala系列:Map和Tuple

Map 构造Map 不可变: val map = Map("sa" -> 1, "s" -> 2)map("sa") = 3 // error val emptyMap = new scala.collection.immutable.HashMap[String, Int] 可变: val map2 = scala.collection.mutable.Map("sa" -> 2)map2("sa

Scala文件操作

Scala中的文件操作基本可以依赖于Java的实现,包括输入.输出流的使用. object FileOps {def main(args: Array[String]) { val file = Source.fromFile("E:\\WangJialin.txt")  for (line <- file.getLines){ println(line)} file.close val webFile = Source.fromURL("http://spark.ap

Scala 中Array,List,Tuple的差别

尽管学了一段时间的Scala了,可是总认为基础不是太扎实,还有非常多的基础知识比較模糊.于是近期又打算又一次学习基础. Scala中的三种集合类型包含:Array,List,Tuple.那么究竟这三种有哪些异同呢?说实话,我之前一直没弄明确,所以今天特意花了点时间学习了一下. 同样点: 1.长度都是固定的,不可变长 2.早期的Scala版本号,Array.List都不能混合类型,仅仅有Tuple能够,2.8版本号以后,3者的元素都能够混合不同的类型(转化为Any类型) 不同点: 1.Array

Scala 中Array,List,Tuple的区别

虽然学了一段时间的Scala了,但是总觉得基础不是太扎实,还有很多的基础知识比较模糊,于是最近又打算重新学习基础. Scala中的三种集合类型包括:Array,List,Tuple.那么到底这三种有哪些异同呢?说实话,我之前一直没弄明白,所以今天特意花了点时间学习了一下. 相同点: 1.长度都是固定的,不可变长 2.早期的Scala版本,Array.List都不能混合类型,只有Tuple可以,2.8版本以后,3者的元素都可以混合不同的类型(转化为Any类型) 不同点: 1.Array 中的元素值