概述

https://www.scala-lang.org/
https://docs.scala-lang.org/zh-cn/tour/tour-of-scala.html
Scala是一门现代的多范式语言,志在以简洁、优雅及类型安全的方式来表达常用的编程模型。它平滑地集成了面向对象函数式语言的特性。

统一类型

在Scala中,所有的值都有类型,包括数值和函数。下图阐述了类型层次结构的一个子集。
image.png

层次结构

  • Any是顶级类型
    它定义了一些通用的方法如equals、hashCode和toString。Any有两个直接子类:AnyVal和AnyRef。
  • AnyVal代表值类型
    有9个预定义的非空的值类型分别是:Double、Float、Long、Int、Short、Byte、Char、Unit和Boolean。Unit是不带任何意义的值类型,它仅有一个实例可以像这样声明:()。所有的函数必须有返回,所以说有时候Unit也是有用的返回类型。
  • AnyRef代表引用类型
    所有非值类型都被定义为引用类型。在Scala中,每个用户自定义的类型都是AnyRef的子类型。如果Scala被应用在Java的运行环境中,AnyRef相当于java.lang.Object

    使用案例

    ```scala val list: List[Any] = List( “a string”, 732, // an integer ‘c’, // a character true, // a boolean value () => “an anonymous function returning a string” )

list.foreach(element => println(element)) ```

类型转换

image.png

IDEA Scala插件安装

在IDEA中安装Scala插件即可
注:Scala语言底层基于JVM,所以需要安装JKD环境(本次环境jkd1.8)

IDEA Plugins安装

打开IDEA,选择Configure->Plugins
image.png

Scala install

搜索插件【Scala】,点击install
image.png

创建项目

  • create new project ->Scala-> IDEA -> 点击Next
    image.png
  • 输入项目名称,第一次需要选择scala版本 -> 点击Finish
    image.png
  • 测试验证
    image.png

注意:scala版本问题

旧项目支持Scala

项目右键-> add Frameworks Support
image.png