十分钟带汝入门大数据开发语言Scala

article/2025/10/20 15:20:19
大家好,我是百思不得小赵。

创作时间:2022 年 6 月 7 日
博客主页: 🔍点此进入博客主页
—— 新时代的农民工 🙊
—— 换一种思维逻辑去看待这个世界 👀
今天是加入CSDN的第1193天。觉得有帮助麻烦👏点赞、🍀评论、❤️收藏


目录

    • 一、概述
    • 二、搭建环境
    • 三、入门案例
    • 四、IDEA中开发Scala程序
      • 配置步骤
      • 测试代码


一、概述

Scala是一门多范式的编程语言,一种类似Java的编程语言 ,设计初衷是实现可伸缩的语言 、并集成面向对象编程和函数式编程的各种特性。目前最主流的大数据开发框架Spark的实现就是通过Scala去实现的。Scala可以与Java互操作。它用scalac这个编译器把源文件编译成Java的class文件(即在JVM上运行的字节码),也可以从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的代码。

Scala 与 Java 的关系

Scala是基于Java去实现的,可以理解为是对Java的一个扩展。我们都知道C语言和C++的关系,那么就可以把Scala看作是Java++一样。Java编写的.java程序编译生成.class字节码文件,最后由JVM翻译为机器码然后去执行。Scala也是类似,但是不同的是Scala编写的.scala程序,编译生成.classx$.class两个文件,也是在JVM上执行的。

Scala的特点

  • Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。
  • Scala编写起来非常简洁高效
  • Scala源代码(.scala)会被编译成Java字节码(.class),然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接。

二、搭建环境

第一步:在本地安装JDK8环境。点此查看jdk安装具体步骤

在这里插入图片描述

第二步:在Scala官网下载安装包到本地。官网下载地址:https://www.scala-lang.org/download/all.html

选择对应的Scala版本进行下载。在这里插入图片描述在这里插入图片描述
在这里插入图片描述
第三步:配置环境变量

点击此电脑,选择高级系统选项,点击环境变量,新建一个SCALA_HOME,在path中添加%SCALA_HOME%\bin

在这里插入图片描述
在这里插入图片描述

配置完成后,在dos窗口测试,输入scala之后进入scala shell表示配置成功!

在这里插入图片描述

测试一个简单的案例:计算两数之和。

在这里插入图片描述

三、入门案例

创建一个.scala文件命名为HelloScala.scala,编写第一个scala代码。

在这里插入图片描述

进入DOS窗口:输入scalac HelloScala.scala编译生成.class文件

在这里插入图片描述

然后输入scala HelloScala运行成功!

在这里插入图片描述

scala代码基本语法说明

object HelloScala{def main(args: Array[String]):Unit ={println("Hello Scala")} 	
}
  def 方法名称(参数名称: 参数类型): 方法返回值类型 = { 方法体 }
  • object: 为一个关键字,表示声明一个单例对象(伴生对象)
  • main方法:外部直接调用的方法
  • Unit: 空返回值类型,相当于void
  • scala中每行代码结束无需分号结束
  • Scala中的注释和Java中的注释是一样的

四、IDEA中开发Scala程序

默认情况下 IDEA 不支持 Scala 的开发,需要安装 Scala 插件及相关配置。请看如下步骤:

配置步骤

首先打开idea,点击右上角的File,选择settings

在这里插入图片描述
然后选择plugs,输入Scala,提示出Scala插件,点击install,安装完成后重启idea,插件安装成功。

在这里插入图片描述
右击项目名称,点击Add Framework support,勾选Scala,选择对应的配置

在这里插入图片描述

创建一个maven工程,在main目录下创建新的文件夹,命名为scala

在这里插入图片描述

右键文件夹,选择make directory as --> soures root

在这里插入图片描述

创建scala 对象

在这里插入图片描述
在这里插入图片描述

至此,在idea中编写scala代码完整的步骤就结束了,接下来写一个测试代码验证一下!

在这里插入图片描述

测试代码

编写scala代码:

object Test {def main(args: Array[String]): Unit = {println("Hello Scala")}
}

测试成功:

在这里插入图片描述

至此,Scala入门的全部内容就结束啦!
在这里插入图片描述


http://chatgpt.dhexx.cn/article/AwjqibBf.shtml

相关文章

学习大数据需要什么语言基础

Python易学,人人都可以掌握,如果零基础入门数据开发行业的小伙伴,可以从Python语言入手。 Python语言简单易懂,适合零基础入门,在编程语言排名上升最快,能完成数据挖掘、机器学习、实时计算在内的各种大数…

大数据分析学习哪些编程语言

大数据分析已成为21世纪最受欢迎的技术之一。由于行业对大数据分析家的需求很高,因此需要具有所需技能的人员才能精通该领域。除了数学技能外,还需要编程专业知识。但是,在获得专业知识之前,有抱负的大数据分析家必须能够对工作所…

大数据处理需要用到的编程语言开发语言

你有一个大数据项目,你知道问题领域(problem domain),也知道使用什么基础设施,甚至可能已决定使用哪种框架来处理所有这些数据,但是有一个决定迟迟未能做出:我该选择哪种语言?&#…

大数据常用十种开发语言

随着大数据热潮持续延烧,几乎每个产业都有如洪水般倾泻的信息,面对上万笔的顾客浏览纪录、购买行为数据,如果要用 Excel 来进行数据处理真是太不切实际了,Excel 相较于其他统计软件的功能已相去甚远;但如果只会操作统计软件而不会…

大数据开发都需要掌握哪些编程语言

当前正处在大数据时代背景下,大数据技术目前也正处在落地应用的初期,未来大数据的发展空间还是比较大的,所以学习大数据相关技术是个不错的选择。 大数据编程语言的选择要根据具体的工作岗位来进行,目前大数据领域的工作岗位包括大数据平台研发、大数据应用开发、大数据分…

linux卸载自带java JDK,安装配置java jdk环境

一、卸载 openjdk 1、查看 java 版本时,显示已经安装了 openjdk,需要卸载 [rootxxx ~]# java -version openjdk version "1.8.0_292" OpenJDK Runtime Environment (build 1.8.0_292-b10) OpenJDK 64-Bit Server VM (build 25.292-b10, mixe…

Java 线程安全与锁

多线程内存模型 线程私有栈内存 每个线程 私有的内存区域进程公有堆内存 同一个进程 共有的内存区域 为什么会有线程安全问题? 多个线程同时具有对同一资源的操作权限,又发生了同时对该资源进行读取、写入的情况,那么就会出现重复操作的情…

java线程和锁

锁,是计算机系统中非常常见的技术,实现线程对资源的独占,防止对资源的并发读写造成错误,本文通过从线程,线程状态,到java提供的锁基础,基础的复盘一下线程和锁线程 计算机系统中,经…

Java线程里的14种锁

参考资料: 不可不说的Java“锁”事 java多线程的15种锁 以下内容是参考上面两片文章写出的粗略总结, 想要细究可以看上面两位大佬写的文章, 由于是参考着写的, 所以有很多地方相同, 如果有侵权或不妥的地方还请联系删除. 一. 线程是否同步资源? 1. 悲观锁 : 同步 每次拿数…

Java多线程 各种锁(一篇全搞懂)

Java多线程 锁 文章目录 Java多线程 锁1、乐观锁与悲观锁2、公平锁与非公平锁3、可重入锁与不可重入锁4、独享锁与共享锁5、自旋锁 VS 适应性自旋锁6、无锁 、 偏向锁、量级锁 和 重量级锁(难点) 1、乐观锁与悲观锁 (1)悲观锁 对…

Java多线程编程(三)——线程锁

卖票案例 同步代码块解决数据安全问题 同步方法解决数据安全问题 同步方法的格式: 同步方法和同步方法块的区别: 同步静态方法 Lock锁 卖票案例 某电影院目前正在上映国产大片,共有30张票,而它有3个窗口卖票,请…

浅析Java 多线程中的锁

前言 随着互联网技术的快速发展,多线程编程已经成为了现今编程领域中必不可少的知识点之一。Java 是一种广泛使用的编程语言,也是一些底层应用程序和高并发应用程序的首选语言。而 Java 提供的多线程编程机制和相关的锁机制,则成为了 Java 开…

【Java多线程进阶】常见的锁策略

前言 众所周知,拳击运动员是要分等级(轻量级、重量级等等)来参加比赛的,在 Java 多线程中 锁(synchronized) 也会根据锁的竞争程度来升级为相关“高等级”锁,为了更好的理解 synchronized 加锁机…

Java多线程下——各类锁的详解

这里写目录标题 各类锁的详解常见的锁策略乐观锁 vs 悲观锁读写锁重量级锁 vs 轻量级锁自旋锁(Spin Lock)公平锁 vs 非公平锁可重入锁 vs 不可重入锁 CASSynchronized 原理偏向锁锁消除锁粗化 Callable 接口ReentrantLock线程池ExecutorService 和 Execu…

Java中的线程和锁机制

线程池 为什么使用线程池?线程池执行原理?线程池参数有哪些?线程池大小怎么设置?线程池的类型有哪些?适用场景? 进程线程 线程的生命周期讲一下线程中断?创建线程有哪几种方式?什么是…

【Java】中的多线程线程锁

多线程 文章目录 多线程线程的创建和启动sleep()stop() 线程的休眠和中断线程的优先级线程的礼让和加入yield()stop() 线程锁和线程同步synchronized 关键字 死锁概念 wait & notify methodThreadLocal的使用定时器 Timer守护线程再谈集合类parallelStreamforEachOrdered()…

Java多线程中 的各种锁

学习 java 多线程时,最头疼的知识点之一就是 java 中的锁了,什么互斥锁、排它锁、自旋锁、死锁、活锁等等,细分的话可以罗列出 20 种左右的锁,光是看着这些名字就足以让人望而却步了,更别说一个个去理解它们的含义了。…

Java——多线程和锁

多线程 前言:当我们打开一个网站时,不同部分的加载并不是先后出现的,是并行出现的,没有出现一个地方没加载完,别的地方就也加载不出来这种事。这个就是多线程并行运行。 当其中一个线程发生阻塞时,操作系统会自动执行…

Java-多线程中的“锁“

文章目录 Java多线程中的锁1. 什么是锁?2. 锁的作用3. 锁的类型4. 锁的使用示例5.乐观锁和悲观锁6. 锁的注意事项总结 Java多线程中的锁 在Java多线程编程中,锁是一种重要的同步机制,用于保护共享资源的访问。使用锁可以防止多个线程同时对共…

JAVA三种线程锁

内置锁:synchriozed,关键字,同步代码块,object.wait和object.notify/notifyall 显示锁:Lock,JUC包下的类,同步代码块,condition.await和condition.signal/signalall 原子类&#xff…