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