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) //此集合可以遍历 } }