scala 编程介绍(其一)

scala 语言:
1.框架的用户是应用开发程序员,API是否优雅直接影响用户体验。scala 是对 java 的封装,代码可读性与书写较好
2,Scala语言表达能力强,一行代码抵得上Java多行,开发速度快;Scala是静态编译的(比动态快),先编译成 class 文件
3,能融合到Hadoop生态圈
常用类型:
Scala和Java一样,有7种数值类型Byte、Char、Short、Int、Long、Float和Double(无包装类型)和一个Boolean类型
加减操作方法:
1,Scala中的+ - * / %等操作符的使用,作用与Java一样,位操作符 & | ^ >> <<也一样。
2,这些操作符实际上是方法a + b 是方法调用的简写:a.+(b) a 方法 b可以写成 a.方法(b)
package day01

// 1, scala 是一种运行在 JVM的一种静态语言,改进了java代码的缺陷
//  2,在 scala 之中一切都是对象,即使是数值类型 ,像python 对于c

// 同 java 相同,与文件名相同
class test {

}
// 静态类
object Test1{
  def main(args: Array[String]): Unit = {
    val str = "a" // 声明的变量是不可变的
    val str1 :Int=123  //声明指定类型 变量不能重复!
    var a = "b"   // 声明的变量是可变的
    a = "d"       // 可变只是针对 同种类型的
    var b = 1
    b= 2        // b="a" 是不正确的,不是同种类型!

    val i = 1
    // {}表示无返回值,scala之中的 unit 类来进行实现的 相当于 java之中的 void
    val n = if(i>1)  "大于一 " else {} 

    val result ={  //块表达式 需要指定返回值
      if(i<1){
        "小于一"
      } else if (i==1) {
        "等于一"
      }else {
        " error"
      }
    }
    val x = 3
    val z = if(x>5) "大于五!" else " 小于五!"
    val z1 = if(x>5) "大于五!"   // 只有 if
    val k = if(x>5) "大于五!" else if(x<3) "3-5之间" else  "..."

    println(1 to 10)  //[1,10] //闭区间 范围值
    println(1 until 10) //[1,9]

    for(i <- 1 to 10){ //for循环 i在区间 [1,10] '<-'相当于 python 之中的 in
      println(i)
    }
    val arr = Array("a","b","c") //可以循环 数组!
    for (v <-arr) println(v)
    // for 循环嵌套!
    for (m <-1 to 10;j<- 1 to 10 if(m != j)) println(i*10+j)
    for (n <- 1 to 10) yield n // 将 n放到一个集合之中

    val h =3
    val s=1
    //      println(h+s)
    //      println(h.+(s))

    // 如果循环体是以 yield 开始 ,那么会返回一个集合
    val v = for (j <- 1 to 10) yield j*10
    println(v)
    for (k <- v) println(k) //此集合可以遍历
  }

}

 

posted @ 2019-02-28 21:30  十七楼的羊  阅读(168)  评论(0编辑  收藏  举报