Scala简要总结一

1. 什么scala?

Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的
最佳特性结合在一起的静态类型的编译语言

2. scala特点?

1.Scala是一门多范式的编程语言,scala支持面向对象和函数式编程;
2.scala语言非常的简洁高效;
3.scala源代码会被编译成java字节码,然后运行在JVM上,并可以调用现有的JAVA类库,实现两种语言的无缝连接;
4.scala思想是将函数式编程语言的特点融合到JAVA上。

3. scala的注意事项?

1.scala源文件以.scala为扩展名;
2.scala程序的执行入口是object中的main()函数;
3.Scala语言严格区分大小写;
4.Scala方法由一条条语句构成,每个语句后不需要分号(scala语言会在每行后自动加分号);(至简原则)
5.如果同一行有多条语句,除了最后一条语句不需要分号,其他语句都需要分号。

4. scala的注释?

	//单行注释
	
	/*
	 *多行注释
	 */
	
   /**
	*文档注释
	*/

5. scala的关键字?

package,import,class,object,trait,extends,with,type,for
private,protected,abstract,sealed,final,implicit,lazy,override
try,catch,finally,throw
if,else,match,case,do,while,for,return,yield
def,var,val
this,super
new
true,false,null

6. scala的变量声明?

val | var 变量名 [:变量类型] = 变量值
声明变量时可以不指定类型,编译器根据值确定

1:声明变量时,类型可以省略(编译器自动推导,即类型推导)
2:类型确定后就不能修改,说明Scala是强数据类型语言
3:变量声明时需要初始值
4:声明或定义一个变量时,可以用var或者val修饰,var修饰的变量可改变,val不可以改变,一般都使用val
5:var修饰的对象引用可以改变,val修饰的则不可以改变,但对象的状态(值)却是可以改变的

7.scala数据类型?

scala一切数据都是对象,都是Any子类
数据类型分为两大类:数值类型(AnyVal),引用类型(AnyRef)
整数类型(Byte(1),Short(2),Int(4),Long(8)
浮点类型(Float(4),Double(8))
字符类型(Char(2))
布尔类型Boolean(1)
Unit类型,Null类型,Nothing类型

8.scala运算符?

算数运算符:
	+ 正号
	- 负号
	+ 加
	- 减
	* 乘
	/ 除
	% 取余
	+ 字符串相加
	
关系运算符:
	== 相等于
	!= 不等于
	<  小于
	>  大于
	>=  大于等于
	<=  小于等于
	
逻辑运算符:
	&&  逻辑与
	||  逻辑或
	!   逻辑非

位运算符:
	& 	按位与运算符    (a & b) 输出结果 12,二进制解释:0000 1100  
	| 	按位或运算符 	(a | b) 输出结果 61,二进制解释:0011 1101
	^ 	按位异或运算符  (a ^ b  输出结果 49,二进制解释:0011 0001
	~ 	按位取反运算符  (~a ) 输出结果 -61,二进制解释:1100 0011,在一个有符号二进制数的补码形式
	<< 	左移动运算符 	a << 2 输出结果 240,二进制解释:1111 0000
	>> 	右移动运算符 	a >> 2 输出结果 15,二进制解释:0000 1111
	>>> 无符号右移 		A >>>2 输出结果 15, 二进制解释:0000 1111

赋值运算符:
	=    将一个表达式的值赋值给左边的值
	+=   相加后再赋值			c += a 等于 c = c + a
	-=   相减后再赋值
	*/   相乘后再赋值
	/=   相除后再赋值
	%=	 取余后再赋值
	<<=  左以后赋值				c <<= 2 等于 c = c << 
	>>=  右移后赋值
	&=   按位与后赋值
	^=   按位异或后赋值
	|=   按位或后赋值
	
	注意:scala中没有++,--操作符,需要通过+=,-=来实现同样的效果

9.函数和方法的区别

为完成某一功能的程序命令(语句)的集合,称为函数;
类中的函数称之为方法。

scala语言的语法非常灵活,可以在任何地方的语法结构中声明任何的语法;
函数没有重载和重写的概念,方法可以进行重载和重写;
scala中函数可以嵌套定义;
方法写在类中;
函数可以当做参数。

猜你喜欢

转载自blog.csdn.net/lkm0522/article/details/109056492