Scala语言入门

news2024/11/19 7:28:19

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

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以上

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
测试使用
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 循环)

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 *

D:\>scalac HelloWorld3.scala

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

IDEA集成

需要集成Scala插件

在线安装

在这里插入图片描述

离线安装

注意版本

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1109666.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

统计学习方法 隐马尔可夫模型

文章目录 统计学习方法 隐马尔可夫模型基本概念概率计算问题直接计算法前向算法后向算法前向概率和后向概率 学习问题监督学习算法Baum-Welch 算法E 步M 步参数估计公式算法描述 解码问题近似算法Viterbi 算法 统计学习方法 隐马尔可夫模型 读李航的《统计学习方法》时&#x…

增加并行度后,发现Flink窗口不会计算的问题。

文章目录 前言一、现象二、结论三、解决 前言 窗口没有关闭计算的问题,一直困扰了很久,经过多次验证,确定了问题的根源。 一、现象 Flink使用了window,同时使用了watermark ,并且还设置了较高的并行度。生产是设置了…

实时精准 自我防护 | 开源网安RASP平台能力获客户认可!

近日,开源网安收到了一封来自华润数科的感谢信,表达了对开源网安团队在网络安全工作中给予大力支持的衷心感谢。开源网安十分注重客户的需求和信任,客户的满意和认可是开源网安最大的追求。 在助力华润数科网络安全工作开展过程中&#xff0c…

运放供电设计

文章目录 运放供电设计如何产生负电压BUCK电路BOOST电路产生负电压FLYBUCK产生负电压 运放供电设计 注:使用0.1u跟10u并联 如何产生负电压 问题:电流小,使用并联方式改善,缺点价格贵,淘宝上买的都是假货ICL7662多是用…

开源情报之领英人脸情报收集,如何快速收集上亿张人脸情报

一.前言 先看应用例子: 残忍至极!乌克兰用人脸识别战死俄军,联系母亲打“心理战” 情报机构,所掌握的数据,可以是市面上流出的任何数据,比如市面上泄露的领英数据,facebook,twitter&…

万能DIY预约小程序源码系统 上门预约服务小程序搭建 适用于各种预约场景 自由DIY功能模块

在这个快节奏的时代,预约服务已经成为了我们日常生活的一部分。从看病挂号到餐厅预订,从美发美容到家政服务,预约已经深入到了各个领域。然而,传统的预约方式存在着许多不便,如电话预约、在线填写表格等,不…

python小游戏:小球碰撞

创建带图形界面的游戏通常需要使用图形库。Python有很多图形库,其中比较流行的包括Pygame, PyOpenGL, Panda3D等。在这里,我将用Pygame作为示例来编写一个简单的游戏。 在运行下面的代码之前,请确保你已经安装了Pygame库。你可以使用以下命令…

ASCII (American Standard Code for Information Interchange)

ASCII (American Standard Code for Information Interchange)美国信息交换标准代码

Python基础--PART1

最近闲来无事,学习使用Python也有好几年了,一直没有系统的总结,现在有时间就写一写个人的一些拙见。 PART1. 核心语法(基础语法) 1. 变量 1.1 变量的定义 ​ 变量就是可变的量,对于一些有可能会经常变化的数据,我们…

负荷不均衡问题分析处理流程

一、负荷不均衡分析 负荷不均衡判断标准:4G同覆盖扇区内存在无线利用率大于50%的小区,且两两小区间无线利用率差值大于30%,判定为4G负荷不均衡扇区;5G同覆盖扇区内存在无线利用率大于50%的小区,且两两小区间无线利用率…

梦幻西游手游详细图文架设教程

前言 提到梦幻西游,大家肯定不陌生。在 2001 年正式上线,它成为了很多人的第一款网游,陪伴了一代又一代的玩家成长。没错,今天要架设的就是梦幻西游手游! 本文讲解梦幻西游手游架设教程,经典的职业、音乐、…

服务器数据恢复-RAID5中磁盘被踢导致阵列崩溃的服务器数据恢复案例

服务器数据恢复环境: 一台3U的某品牌机架式服务器,Windows server操作系统,100块SAS硬盘组建RAID5阵列。 服务器故障: 服务器有一块硬盘盘的指示灯亮黄灯,这块盘被raid卡踢出后,raid阵列崩溃。 服务器数据…

安防视频监控系统EasyCVR视频汇聚存储平台定制化开发:新增kafka配置

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台可拓展性强、…

【自动化测试】基于Selenium + Python的web自动化框架

一、什么是Selenium? Selenium是一个基于浏览器的自动化工具,她提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid:  1、Selenium IDE&…

深圳金媒人红娘专业介绍-避免遇到相亲翻车

从古至今,单身男生女生都非常多,大部分单身人群又在急于脱单的过程中,一不小心就容易遇到相亲p局,这就翻车啦! 深圳金媒人红娘提醒:找对象更应该懂得防范,要学会选择正规的相亲网站,…

iOS QQ登录SDK升级后报错Duplicate interface definition for class ‘TencentOAuth‘修复

起因 最近发现QQ登录SDK sdk-Lite3.3.8 TencentOpenAPI 在部分手机上会崩溃到初始化位置, 比如:iPhone6p 版本12.5.4,iPhone8p 版本14.1,iPad版本12.5.6 但是在iPhone 12以上的手机都没遇到这个问题 所以怀疑是QQ 登录 SDK版本…

Bootstrap的表单组件相关知识

01-最基本的表单组件使用示例 示例代码如下&#xff1a; <!DOCTYPE html> <html> <head><meta charset"UTF-8"><title>使用表单组件</title><meta name"viewport" content"widthdevice-width,initial-scale…

Practical Deep Raw Image Denoisingon Mobile Devices

Abstract 近年来&#xff0c;基于深度学习的图像去噪方法得到了广泛的研究&#xff0c;并在许多公共基准数据集中盛行。然而&#xff0c;最先进的网络计算成本太高&#xff0c;无法直接应用于移动设备。在这项工作中&#xff0c;我们提出了一种轻量级、高效的基于神经网络的原…

easyexcel操作之名称匹配

简单说下需求 现在我有一个excel表格&#xff0c;里面有两张表&#xff0c;分别是a_name表&#xff0c;b_name表&#xff0c;我要在这两张表的基础上新建一张a_b_name表&#xff0c;这张表匹配a,b表的名称&#xff0c;品牌名一样则放在同一行。 示例&#xff1a; a_name表 …

月入10.3K,苦逼土木狗转行5G网路优化工程师:对象没了之后,我选择转行!

如果要去某乎平台搜大学生第一劝退专业&#xff0c;土木专业当之无愧。熬夜打灰、肤色比拼、领导大饼……是土木交流贴吧群常见热词。初入土木纷纷立下的“年轻人不怕吃苦的”flag接连打破&#xff0c;提桶跑路似乎成了土木最终归宿。 今天采访的主人公也是万千苦逼土木人中的一…