一、scala变量
1、变量声明
在 Scala 中,使用关键词 “var” 声明变量,使用关键词 “val” 声明常量。
变量: 在程序运行过程中其值可能发生改变的量叫做变量。如:时间,年龄。
常量 在程序运行过程中其值不会发生变化的量叫做常量。如:数值 3,字符’A’。
val a:Int = 1
val str:String = 2
【注】:scala的变量或函数的类型总是写在变量或函数的后面。在 Scala 中声明变量和常量不一定要指明数据类型,在没有指明数据类型的情况下,其数据类型是通过变量或常量的初始值推断出来的。声明变量时不做初始化会报错。
2、Scala 多个变量声明
Scala 支持多个变量的声明:
val xmax, ymax = 100 // xmax, ymax都声明为100
val pa = (40,"Foo") //可以使用 val 来声明一个元组
二、数据类型&运算符
1、scala支持的数据类型
下表列出了 Scala 支持的数据类型
2、数值类型转换
Scala中使用方法,而非强制类型转换来做数值类型之间的转换。如,
1.toString() //将1转化为字符
99.44.toInt //将转化为整型
3、运算符
3.1 算术运算符
var a = 10;
var b = 20;
var c = 25;
var d = 25;
println("a + b = " + (a + b) );
println("a - b = " + (a - b) );
println("a * b = " + (a * b) );
println("b / a = " + (b / a) );
println("b % a = " + (b % a) );
println("c % a = " + (c % a) );
3.2关系运算符
var a = 10;
var b = 20;
a>b;
3.3逻辑运算符
逻辑运算符包括与(&&)、或(||)、非(!)结构返回布尔类型的true或者false
3.4位运算符
这个要与逻辑运算符区别:
3.5赋值运算符
3.6运算符优先级
优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。
三、其他
1、Scala 转义字符
常见的转义字符如下:
2、Scala 注释
Scala 支持单行和多行注释。
/* 这是一个 Scala 程序
* 这是一行注释
* 这里演示了多行注释
*/
// 这是一个单行注释
3、Scala 包的定义和引用
定义包可以用:
package com.runoob
class HelloWorld
或者
package com.runoob {
class HelloWorld
}
Scala 使用 import 关键字引用包。
import scala.math._ // Scala中,字符 _ 是通配符,类似Java中的*
另外,以scala开头的包,在引入或使用时可以省略scala。
import math._
【注】:默认情况下,Scala 总会引入 java.lang._ 、 scala._ 和 Predef._,这里也能解释,为什么以scala开头的包,在使用时都是省去scala.的。
4、apply方法
在Scala中通常使用类似函数调用的形式来访问数组、链表等的元素。如:
"hello"(0)
上述调用中,”hello”(0)是”hello”.apply(0)的调用。其中apply方法是StringOps类中的方法。
5、输入输出
5.1输入
常用的包括readLine从控制台读取一行输入,另外,readLine还可带有提示字符串,如:
val name=readLine("input your name:")
readInt、readByte、readDouble、readShort、readLong、readFloat、readBoolean、readChar分别用于读取各自类型的值。
5.2输出
print(内容)、println(内容)、printf; 其中println带换行;另外,printf支持C风格的字符串输出.
参考文献:1、《快学scala》
2、http://www.runoob.com/scala/scala-file-io.html