Scala语言入门

学习了这么久让我们来回顾一下之前的内容吧

Hadoop生态体系知识串讲

Scala编程语言

一、概述

http://scala-lang.org

专门为计算而生的语言,Scala将(Java后者C++)面向对象设计函数式编程结合在一起的简洁的高级编程语言。而函数式编程强调的是通过传递算子(代码|函数)实现大规模数据集的本地计算。Scala虽然是一门独立的编程语言,但是它可以无缝和Java语言对接。Scala编译的代码可以直接运行在JVM之上。Spark 和 Scala 能够紧密集成,例如 使用Scala语言操作大数据集合的时候,用户可以像是在操作本地数据集那样简单操作Spark上的分布式数据集-RDD(这个概念是Spark 批处理的核心术语),继而简化大数据集的处理难度,简化开发步骤。

.java源文件 ---> java编译器 .class ---> jvm

.scala源文件 ---> scala编译器 .class ---> jvm

二、环境搭建

安装

准备工作

建议JDK1.8以上

shell 复制代码
C:\Users\Administrator>java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
Scala安装

后续所使用的Scala版本:scala-2.11.12.msi

配置环境变量
复制代码
# SCALA_HOME  C:\scala
# PATH		  C:\scala\bin
测试使用
shell 复制代码
C:\Users\Administrator>scala -version
Scala code runner version 2.11.12 -- Copyright 2002-2017, LAMP/EPFL

三、使用方式

命令窗口

测试使用

REPL命令窗口: R(Read 读取)、E(Evaluation 评估求值)、P(Print 打印)、L(Loop 循环)

scala 复制代码
C:\Users\Administrator>scala
Welcome to Scala 2.11.12 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_161).
Type in expressions for evaluation. Or try :help.

scala> 1+1
res0: Int = 2

scala> 1+2
res1: Int = 3

1+1 表达式 执行后返回一个名为 res0 变量,类型为 Int , 计算结果为2

传统方式

使用文本编辑器 写Scala源文件,手动编译 解释执行

编译指令:scalac *.scala

解释执行:scala *

shell 复制代码
D:\>scalac HelloWorld3.scala

D:\>scala HelloWorld3
Hello World
scala 复制代码
object HelloWorld3{
	def main(args:Array[String]):Unit = {
		println("Hello World")
	}
}

IDEA集成

需要集成Scala插件

在线安装
离线安装

注意版本

相关推荐
lsx20240619 小时前
Eclipse 添加书签
开发语言
易营宝19 小时前
高效的跨境电商广告优化系统:易营宝广告投放实操指南
大数据·开发语言·人工智能·php
qq_2562470519 小时前
再见 Spec Kit?体验 Gemini CLI Conductor 带来的“全自动”开发流
后端
superman超哥19 小时前
路由的艺术:Rust Web 框架中的高效匹配与类型安全提取
开发语言·rust·编程语言·rust web框架·rust路由
hqwest19 小时前
码上通QT实战22--趋势页面01-准备图表对象
开发语言·qt·qpainter·qss·painevent·qt绘图事件
Moment19 小时前
如何一次性生成 60 种语气表达?RWKV 模型告诉你答案 ❗❗❗
前端·后端·aigc
想摆烂的不会研究的研究生19 小时前
每日八股——Redis(3)
数据库·redis·后端·缓存
hqwest19 小时前
码上通QT实战23--趋势页面02-图表模拟数据
开发语言·qt·qpainter·qt绘图·绘制曲线
Echo缘20 小时前
关于在.cpp文件中包含c的头文件,编译报错问题
c语言·开发语言
人道领域20 小时前
【零基础学java】(反射)
java·开发语言