目录
一、开发环境搭建
注意:必须先配置好jdk环境,scala底层依赖jvm运行
1、Scala下载安装
(1)官网下载压缩包
地址:https://www.scala-lang.org/download/all.html
选择2.11.8版本
(2)解压到本地目录
(3)配置环境变量
创建SCALA_HOME变量
将bin路径配置到PATH变量中
(4)、cmd窗口验证
输入:scala -version
2、IDEA集成scala插件
搜索并安装Scala插件,安装后重启
安装成功显示scala条目
添加Scala SDK
Idea自动识别出系统安装的Scala,点击ok即可
3、IDEA创建scalaDemo项目
选择IDEA工程模板
工程命名为ScalaDemo,点击Finish
src目录下新建scala class
Name为Main,Kind选择Object
写入如下代码:
def main(args: Array[String]): Unit = {
println("Hello, Scala!")
}
运行结果
二、基本语法介绍
参考如下博客:https://blog.csdn.net/heartless_killer/article/details/103288035
三、语法示例
方法调用示例,后续示例都以方法形式出现
object Main {
/**
* 主方法,程序入口
* @param args
*/
def main(args: Array[String]): Unit = {
println("main() run...")
// 调用方法funTest
funTest()
}
/**
* 测试方法
*/
def funTest(): Unit ={
println("funTest() run...")
}
}
1、循环示例
/**
* 9*9乘法表打印
*/
def printTable1(): Unit = {
println("9*9乘法表打印1")
// 传统双层循环
for (i <- 1 to 9) {
for (j <- 1 to i) {
print(s"$j*$i=" + i * j + "\t")
if (j == i) {
println()
}
}
}
}
scala的for循环中,可以写入多个判断条件,以英文分号或空格分割即可
/**
* n*n乘法表打印
*
* @param n
*/
def printTable2(n: Int): Unit = {
println("9*9乘法表打印2")
// scala简化写法
for (i <- 1 to n; j <- 1 to i) {
print(s"$j*$i=" + i * j + "\t")
if (j == i) {
println()
}
}
}
方法传入的参数默认都是常量,即val类型,不能直接修改参数值,需要创建新变量
/**
* 递归计算n!
* @param n
* @return
*/
def factorial(n:Int): Int = {
if(n == 1){
return 1
} else {
return n * factorial(n-1)
}
}
/**
* 循环计算n!
*
* @param n
*/
def factorial2(n: Int): Int = {
var result = 1;
var item = n;
while (item > 0) {
result *= item;
item -= 1;
}
return result;
}
scala的foreach用法
/**
* foreach遍历
*
* @param s
*/
def fun1(s: String*): Unit = {
// 匿名函数遍历
s.foreach(item => {
println(item)
})
// 简化写法
s.foreach(println(_))
// 进一步简写
s.foreach(println)
}