手把手Scala 第一集 Scala 基础语法01

Scala是一个面向对象的函数式的编程语言,它独特的编程范式令人映像深刻


1.安装Scala

注意:

Scala与Java的关系是尤其紧密的,因为Scala是基于Java虚拟机,也就是JVM的一门编程语言。所有的Scala代码

都会编译为字节码,然后交由JVM来运行,这也是为什么Scala能无缝调用Java代码,如果你说:我不懂Java呀.....

那还不赶快去学@!!!!!!!

总之:安装scala之前必须保证JDK安装完成

1)从scala官方网站下载Scala安装包 

https://www.scala-lang.org/download/

2)安装Scala并在PATH环境变量中配置$SCALA_HOME/bin目录

3)在cmd命令行中直接键入scala,打开scala命令行

Scala解释器

2.声明变量

    开始之前先带大家认识两个Scala中的朋友:val与var

    · 声明val变量: 可以声明val变量来存放表达式的计算结果

        例如: val res = 1+2+3

        之后这个变量依然是可以使用的 例如 2 * res

        但是由val声明的变量是无法改变值的 ,例如 res = 12 会返回error错误信息    

    · 声明var变量: 可以声明var变量,var声明的变量值可以改变

            例如 var res =1,res =2

     既然一个可以改变另一个不能改变,那我们都用var就好了?

问得好!!!

然而事实是:在Scala程序中,我们通常推荐使用val,也就是不可改变值的写法(常量)。这样不但编译时能方便的优化字节码文件,而且在类似与spark这样的大型复杂系统中,不用担心大量的网络传输数据被错误的更改。这个做法在Java的大型复杂系统的设计和开发中也很常见。我们通常会将传递给其他组件/服务的对象,设计成不可变类(Immutable Class)。


 · 指定类型:

无论是var还是val我们都可以手动得指定类型。既然说“可以手动”,那当然也可以不指定类型由Scala自动根据值,进行类型推断(数据类型在下面会看到)

           例如:val name:String = null

                 var name:Any = "dongFangBuBai"

那什么时候需要手动指定,什么时候不需要呢?

如果你开心的话呢,尽管交给Scala自动推断吧,只是可能接手代码的哥们儿就很难受了。


到时候闯了祸可别把我供出来


 · 声明多个变量:

可以将多个变量放在一起声明

例如:val name,age:String = null

3.数据类型与操作符

基本数据类型:Byte、Char、Short、Int、Long、Float、Double、Boolean。

貌似见过这东西啊

猛的一看:这不是Java包装类吗?然鹅Scala并没有基本数据类型和包装类型的概念。统一的叫做类。作为一门成熟的编程语言,Scala已经学会了自己负责基本数据类型和应用类型的转换操作了。

以上的数据类型可以,直接就可以调用大量的函数了。例如 12.toString()

类的加强版类型

悟空,你让开,为师自己来

体会一下,大概就是图上那个样子

Scala使用了很多的加强类给数据类型增加了上百种增强功能或函数,而且通过隐式转换能直接调用

例如:RichInt的to函数,可以直接使用1.to(100),此处的Int先隐式转换为了RichInt,然后再调用to函数

基本操作符

Scala的算数操作符与Java并没有什么区别,比如:+、=、-、*、%、<<、>>、|

但本质上是不同的,再Scala中,这些操作符都是函数 ,例如 1 + 1 你以为是1 + 1,但他是 1 + (1)

对,这个“+”就是一个函数表达式,再比如刚刚看到过的12.to(100)其实也可以写作12 to 100


你以为这是电话,其实他是剃须刀

Scala中并没有++,--操作符,我们只能使用+= 或者 -=



                                                       学有所成,学无止境 ----------------------我是易工匠,一个不正经的软件从业者。

你可能感兴趣的:(手把手Scala 第一集 Scala 基础语法01)