Scala--基础入门

这是Scala系列的第一篇博客,后面会持续更新Scala系列以及Spark等。本篇博客主要讲解Scala的简介和安装,还有scala的变量定义变量类型,以及扩展在Intellij IDEA上安装Scala插件。

简介/安装

Scala,是一门运行在JVM上的函数式面向对象语言,可以很好的兼容java。函数式面向对象语言,也就是说既有像java面向对象语言的特性又有类似于Python函数式语言的特性。下面让我们一起来看看Scala的环境搭建:

1、首先安装一下JDK(略)
2、安装scala,官方下载:http://www.scala-lang.org/download/2.11.0.html
3、配置好环境变量(略)

配置好后,打开cmd命令窗口,输入scala就进入了友好的scala的”Repl“界面,如图:

在“Repl”界面我们就可以进行一些简单的计算和操作。每一次都会返回一个结果,如下图所示:

进行简单计算,7+9:res0:Int=19(该信息体现了参数的定义,只是省略了val)。然后我们就可以通过参数名res0使用该值,例如:res0*0.35,如上图所示。

res0(res1,res2…)  #为返回值名称
Int(Double,String….)  #为返回值类型

变量定义

  • 变量定义:

val|var 参数名:参数类型=参数值

scala有两种声明变量的方式varval

  1. val,类是于Java中的final变量,一旦初始化就不能修改,例如上图中msg4。
  2. var,声明的变量就可以多次被赋值,scala建议声明为val。
  3. 在声明变量时也可以不指定类型,scala自己会进行类型推断,判断出“Word”为String类型(java.lang.String)。

  4. 懒值 ,当val被声明为lazy时。它的初始化将被推迟,直到我们首次使用它,eg:

1
lazy val words = scala.io.Source.fromFile("/use/word").mkString

变量类型

  1. scala中有7种数值类型ByteCharShortIntLongFloatDoubleBoolean,这类用法和java的基本类型类似。只是scala这些类型是类,它不区分引用类型和基本类型;

  2. 对于字符串它使用的java.lang.String,但scala也有自己的扩展StringOps类;其他类型的一些扩展比如,RichInt、RichDouble、RichChar,还有java.math.BigIng、java.math.BigDecimal等;

  3. 基本类型和包装类新之间的转换,这个scala编译器会自动完成,eg:创建一个Int[]数组,最后在虚拟机中得到的是int[];

  4. 在scala中,数值类型之间的转换不是强制类型转换而是使用方法,eg:toInttoDoubletoChar等

scala脚本

脚本,就是一些简短的命令组合放在一个文件中,运行脚本就是按顺序执行文件中的语句。比如我们把这两行代码写到script.scala文件中:

然后运行:

args(n) , 就可以接受到后面的参数(这个和java很像,java中main方法args[]同样能接收到)(注意:数组java是”[]”而scala中是”()”)。

扩展-Intellij使用

这里顺便讲一下使用Intellij IDEA开发scala:

下载安装Intellij IDEA
安装Intellij的scala插件

菜单File—>Settings

输入scala,然后点击右边的install plugin

安装好插件后重启就可以新建项目了,File—>New—>Project,选择scala:

输入项目名,选择项目地址和JDK和scala的SDK,Finish

右键创建一个scala class,我们这里选择为Object

写一个简单的例子,测试一下,okay!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值