Scala笔记

1. 学习Scala的意义:

  1. 做东西:Spark、Kafka、Flink 生态系统
    • 优雅
    • 开发速度
    • 生态融合

2. Scala安装

  1. Java 8
  2. 下载scala-2.11.8
  3. 解压scala
  4. 【可选】配置到环境变量
  5. 执行scala

3. Scala使用入门

3.1 Scala vs Java

  1. Java HelloWorld

    public class HelloWorld{
      public static void main(String[] args){
        System.out.println("Hello World");
      }
    }
    
  2. Scala HelloWorld

    • scala每行代码并不强求使用;结束,但是Java是必须的
    object HelloWorld{
      def main(args : Array[String]){
        println("Hello World")
      }
    }
    

3.2 val vs var

  1. val:值(不可变)(优先使用)
    • Java 中的final
    • val 值名称:类型 = xxx
    • val age:Int = 20
  2. var:变量(可变)
    • var name = "zhangsi"
    • 可以修改namename = "zhangwu"

3.3 基本数据类型

  1. Byte / Char

  2. Short / Int / Long / Float / Double

  3. Boolean

  4. 类型转换

    val d:Float = 1.2f
    val g:Double = 10.asInstanceOf[Double]
    scala> g
    res0: Double = 10.0
    
  5. 判断类型是否一致

    val h = 10.isInstanceOf[Int]
    h: Boolean = true
    val h = 10.isInstanceOf[Double]
    h: Boolean = false
    
  6. lazy关键字的使用

    • 可以延迟加载避免直接报错
    scala> lazy val a = 1
    a: Int = <lazy>
    scala> a
    res0: Int = 1
    
  7. 常用IDE

    • IDEA
    • Eclipse ide scala
    • NetBeans(不常用)