Spark-Scala语言实战(2)(在IDEA中安装Scala,超详细配图)

之前的文章中,我们学习了如何在windows下下载及使用Scala,但那对一个真正想深入学习Scala的人来说,是不够的,今天我会给大家带来如何在IDEA中安装Scala。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。

请注意,在IDEA安装Scala前,请保证Windows中以及安装了Scala,如果还没有安装的,可以查看这篇文章学习安装:

win版Scala安装icon-default.png?t=N7T8https://blog.csdn.net/qq_49513817/article/details/136675572?spm=1001.2014.3001.5501

目录

一、IDEA安装

二、Scala安装

1.Scala在线安装 

3.Scala离线安装

3.测试运行

三、编写简洁版九九乘法表

拓展-什么是IDEA及Scala常见函数

1.IDEA

什么是IDEA

IDEA的特点

2.Scala常见函数


一、IDEA安装

IDEA官网下载地址icon-default.png?t=N7T8https://www.jetbrains.com/zh-cn/idea/download/other.html

 

 

这个是创建桌面快捷方式,可选可不选,看个人需求 。

 这样就安装完成了。

二、Scala安装

1.Scala在线安装 

点击后选择Plugins...

 现在我们来安装Scala开发依赖包

搜索Scala 并点击Install安装,重启IDEA。

 

 选择windows安装的Scala后选择点击OK。

重启

3.Scala离线安装

IDEA Scala插件官网下载地址icon-default.png?t=N7T8https://plugins.jetbrains.com/plugin/1347-scala/versions#tabs

因为我的IDEA版本是2023.2.3,所以这里选择相应的兼容版本。 

按照步骤选择Install Plugin form Disk。

选择刚才安装的Scala,点击OK,重启IDEA。

 注意,离线方法也需要安装Scala开发依赖包,详见在线安装

 

3.测试运行

 按照图片依次点击。

 选好后点击Next。

 这里的名称不能包含特殊字符,中文,我这里取个p1,点击Finish。

点击Package建包,包名com.tipdm.scalaDemo,右击com.tipdm.scalaDemo,选择New->Scala Class,新建一个Scala类。

选择Object。

编写代码,测试结果

输出Hello,安装成功

package com.tipdm.scalaDemoobject p1 {def main(args: Array[String]): Unit = {println("Hello")}}

三、编写简洁版九九乘法表

上篇文章,我们说了怎么编写一个九九乘法表。来IDEA试一下能否运行。

package com.tipdm.scalaDemoobject P2 {def main(args: Array[String]): Unit = {object jjcfb {def nb() = {for (i <- 1 to 9) {for (j <- 1 to i) {print(s"$j*$i=${i*j}\t")}println()}}}jjcfb.nb()}

运行成功,那么今天交给大家一种简介版本的。

一行代码,完成,大家快去试试吧。

object P2 {def main(args: Array[String]): Unit = {(1 to 9).foreach { i =>(1 to i).foreach { j =>print(s"$j*$i=${i*j}\t")}; println()}}}

拓展-什么是IDEA及Scala常见函数

1.IDEA

什么是IDEA

IntelliJ IDEA是一款由JetBrains公司开发的集成开发环境(IDE),主要用于Java语言开发,但同样支持其他编程语言和技术栈的开发。它被广泛认为是业界最好的Java开发工具之一,特别在智能代码助手、代码自动提示、重构、J2EE支持、版本控制工具整合(如git、svn、github等)、JUnit测试、代码分析以及创新的GUI设计等方面表现出色。

IntelliJ IDEA提供了丰富的功能,如巧妙的代码完成、静态代码分析和重构,帮助开发人员执行例行和重复的任务,使开发人员能够更专注于软件开发的核心部分。同时,它是一款跨平台的IDE,可以在Windows、macOS和Linux等操作系统上提供一致的使用体验。

无论是开发桌面应用、Web应用、移动应用,还是大数据和云计算应用,IntelliJ IDEA都能提供强大的支持,是开发人员的得力助手。如需更多关于IntelliJ IDEA的信息,建议访问JetBrains公司官网或相关开发者社区进行深入了解。

IDEA的特点

IntelliJ IDEA的特点主要体现在以下几个方面:

  • 智能代码编辑与提示:IDEA具有先进的代码自动完成功能、语法高亮显示以及代码导航,可以显著提高编写代码的效率。其智能代码提示功能能够根据上下文和代码模式,自动为开发者提供可能的代码选项,大大减少了编写代码的时间和精力。
  • 强大的代码分析与重构:IDEA内置了各种强大的静态代码分析工具,能够自动检测出代码中可能存在的问题,并给出相应的警告或建议,帮助开发者尽早发现潜在的bug,提高代码质量。同时,它还提供了智能重构功能,使开发者能够轻松地修改和优化代码结构。
  • 集成调试工具:IDEA提供了强大的集成调试工具,支持断点调试、变量跟踪、表达式求值等功能,方便开发者定位和修复代码中的错误,提高调试效率。
  • 丰富的插件生态系统:IDEA拥有一个庞大而活跃的插件生态系统,开发者可以根据自己的需求安装各种插件来扩展IDEA的功能,无论是集成新的框架、库还是工具,都可以通过插件来实现。
  • 用户友好的界面:IDEA的用户界面设计简洁清晰,易于使用,无论是新手还是有经验的开发者都能轻松上手。
  • 强大的社区支持:IntelliJ IDEA拥有庞大的用户社区和开发者社区,您可以在社区中找到大量的教程、插件和解决方案。

2.Scala常见函数

函数名描述
map对集合中的每个元素应用一个函数,并返回一个新的集合,其中包含应用函数后的结果。
filter对集合中的每个元素应用一个谓词函数,并返回一个新的集合,其中包含使谓词函数返回true的元素。
reduce使用指定的二元函数对集合中的元素进行归约操作,返回一个单一的结果。
foldreduce类似,但接受一个初始值,并使用指定的二元函数对集合中的元素进行归约操作。
flatMap对集合中的每个元素应用一个函数,该函数返回一个集合,然后将所有返回的集合合并成一个新的集合。
foreach对集合中的每个元素应用一个函数,不返回任何结果(Unit类型)。通常用于执行副作用操作。
zip将两个集合中的元素按索引对应起来,并返回一个新的集合,其中包含元素对。
head返回集合中的第一个元素。如果集合为空,则抛出异常。
tail返回集合中除第一个元素之外的所有元素组成的新集合。如果集合为空,则抛出异常。
isEmpty检查集合是否为空,返回一个布尔值。
size 或 length返回集合中的元素数量。
contains检查集合中是否包含指定的元素,返回一个布尔值。
exists检查集合中是否存在使指定谓词函数返回true的元素,返回一个布尔值。
forall检查集合中的所有元素是否都使指定谓词函数返回true,返回一个布尔值。
find查找集合中第一个使指定谓词函数返回true的元素,并返回其选项(Option)值。
sortBy根据指定的排序函数对集合进行排序,并返回一个新的有序集合。
groupBy根据指定的分类函数对集合中的元素进行分组,并返回一个新的映射(Map),其中键是分类结果,值是对应的元素集合。
mkString将集合中的元素连接成一个字符串,并使用指定的分隔符进行分隔。
toListtoSettoMap 等将集合转换为其他类型的集合或数据结构。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式硬件设计(一)|利用 NodeMCU-ESP8266 开发板和继电器结合APP“点灯•blinker”制作Wi-Fi智能开关(附有关硬件详细资料)

概述 本文主要讲述利用 NodeMCU-ESP8266 开发板和继电器通过手机 APP “ 点灯 • Blinker ” 制作一款能够由手机控制的WiFi 智能开关&#xff0c;从而实现智能物联。NodeMCU 是基于 Lua 的开源固件&#xff0c;ESP8266-NodeMCU是一个开源硬件开发板&#xff0c;支持WiFi功能&a…

springboot基于spring boot的在线答题微信小程序

摘 要 在线答题微信小程序是考试中重要的一环&#xff0c;在线答题是学生获取任务信息的主要渠道。为了方便学生能够在网站上查看任务信息、考试&#xff0c;于是开发了基于 springboot框架设计与实现了一款简洁、轻便的在线答题微信小程序。本微信小程序解决了在线答题事务中的…

【RS422】基于未来科技FT4232HL芯片的多波特率串口通信收发实现

功能简介 串行通信接口常常用于在计算机和低速外部设备之间传输数据。串口通信存在多种标准&#xff0c;以RS422为例&#xff0c;它将数据分成多个位&#xff0c;采用异步通信方式进行传输。   本文基于Xilinx VCU128 FPGA开发板&#xff0c;对RS422串口通信进行学习。   根…

面向控制台编程?Java的GUI开发

记得之前刚开始学习Java&#xff0c;按部就班去阅读《Java核心技术》这本书的时候&#xff0c;总是听别人提起&#xff0c;java swing那一章不用看了。然后直到对着控制台编程了半年&#xff0c;回来捡起了Swing图形界面&#xff0c;跟着网上搞了坦克大战的游戏&#xff0c;总觉…

关于数据通信知识的补充——第二篇

目录 四.二层交换机 5.实现不同vlan通信的原理 方法一&#xff1a;路由器网关 方法二&#xff1a;单臂路由 方法三&#xff1a;三层交换机 五.三层路由技术 &#xff08;1&#xff09;直连路由 &#xff08;2&#xff09;静态路由 &#xff08;3&#xff09;动态路由 …

【Poi-tl Documentation】区块对标签显示隐藏改造

前置说明&#xff1a; <dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.12.1</version> </dependency>模板&#xff1a; 删除行表格测试.docx 改造前测试效果 package run.siyuan…

爬虫学习 Scrapy中间件代理UA随机selenium使用

目录 中间件UA、代理处理---process_requestUA随机 代理处理seleniumscrapy 中间件 控制台操作 (百度只起个名 scrapy startproject mid scrapy genspider baidu baidu.com setting.py内 ROBOTSTXT_OBEY FalseLOG_LEVEL "WARNING"运行 scrapy crawl baidu middle…

FFmpeg 常用命令汇总

​​​​​​经常用到ffmpeg做一些视频数据的处理转换等&#xff0c;用来做测试&#xff0c;今天总结了一下&#xff0c;参考了网上部分朋友的经验&#xff0c;一起在这里汇总了一下。 1、ffmpeg使用语法 命令格式&#xff1a; ffmpeg -i [输入文件名] [参数选项] -f [格…

【DFS深度优先搜索专题】【蓝桥杯备考训练】:迷宫、奶牛选美、树的重心、大臣的旅费、扫雷【已更新完成】

目录 1、迷宫&#xff08;《信息学奥赛一本通》&#xff09; 2、奶牛选美&#xff08;USACO 2011 November Contest Bronze Division&#xff09; 3、树的重心&#xff08;模板&#xff09; 4、大臣的旅费&#xff08;第四届蓝桥杯省赛Java & C A组&#xff09; 5、扫…

R语言实现中介分析(1)

中介分析&#xff0c;也称为介导分析&#xff0c;是统计学中的一种方法&#xff0c;它用于评估一个或多个中介变量&#xff08;也称为中间变量&#xff09;在自变量和因变量之间关系中所起的作用。换句话说&#xff0c;中介分析用于探索自变量如何通过中介变量影响因变量的机制…

Uniapp有奖猜歌游戏系统源码,附带流量主

有奖猜歌游戏是一款基于uni-app、uniCloud、uniAD 开发的小游戏&#xff0c;通过猜歌曲、观看广告赚取现金奖励。 游戏基本特征 玩家可以通过猜歌、做任务等方式直接获取现金奖励 玩家可以通过猜歌、拆红包、做任务等方式获取金币奖励&#xff0c;当金币累积到一定数量可以兑…

以题为例浅谈文件包含

什么叫做文件包含 文件包含函数加载的参数没有经过过滤或严格定义&#xff0c;可以被用户控制&#xff0c; 包含其他恶意文件&#xff0c;导致了执行非预期代码。 文件包含漏洞&#xff08;File Inclusion Vulnerability&#xff09;是一种常见的网络安全漏洞&#xff0c;它允…

Django 解决新建表删除后无法重新创建等问题

Django 解决新建表删除后无法重新创建等问题 问题发生描述处理办法首先删除了app对应目录migrations下除 __init__.py以外的所有文件:然后&#xff0c;删除migrations中关于你的app的同步数据数据库记录最后&#xff0c;重新执行迁移插入 问题发生描述 Django创建的表&#xf…

Linux 基础-查看和设置环境变量

一&#xff0c;查看环境变量 在 Linux中&#xff0c;环境变量是一个很重要的概念。环境变量可以由系统、用户、Shell 以及其他程序来设定&#xff0c;其是保存在变量 PATH 中。环境变量是一个可以被赋值的字符串&#xff0c;赋值范围包括数字、文本、文件名、设备以及其他类型…

Webapi(.net6) 批量服务注册

如果不考虑第三方库&#xff0c;如Autofac这种进行服务注入&#xff0c;通过本身的.Core Weabpi实现的&#xff0c;总结了两种实现方法&#xff0c; 1.一种是参考abp框架里面的形式; 1.1 新建个生命周期的文件夹: 三个接口分别为: public interface IScopedDependency { }pu…

Visual Studio配置libtorch(cuda安装一步到位)

Visual Studio配置libtorch visual Studio安装cuDNN安装CUDAToolkit安装libtorch下载Visual Studio配置libtorch(cuda版本配置) visual Studio安装 visual Studio点击安装 具体的安装和配置过程这里就不进行细讲了&#xff0c;可以参考我这篇博客Visual Studio配置OpenCV(保姆…

3.Windows下安装MongoDB和Compass教程

Windows下安装MongoDB 总体体验下来&#xff0c;&#xff0c;要比MySQL的安装简单了许多&#xff0c;没有过多的配置&#xff0c;直接就上手了&#xff01; 1、下载 进入官方的下载页面https://www.mongodb.com/try/download/community&#xff0c;如下选择&#xff0c;我选…

solr/ES 分词插件Jcseg设置自定义词库

步骤&#xff1a; 1、找到配置文件jcseg-core/target/classes/jcseg.properties修改配置&#xff1a; 下载地址: https://gitee.com/lionsoul/jcseg#5-如何自定义使用词库 lexicon.path {jar.dir}/../custom-word 设置lexicon路径&#xff0c;我们这个配置可以自定义&#xf…

flink1.18.0 自定义函数 接收row类型的参数

比如sql中某字段类型 array<row<f1 string,f2 string,f3 string,f4 bigint>> 现在需要编写 tableFunction 需要接受的参数如上 解决方案 用户定义函数|阿帕奇弗林克 --- User-defined Functions | Apache Flink

【IC设计】Verilog线性序列机点灯案例(二)(小梅哥课程)

文章目录 该系列目录&#xff1a;设计目标设计思路RTL 及 Testbench仿真结果存在的问题&#xff1f;改善后的代码RTL代码testbench代码 仿真结果 案例和代码来自小梅哥课程&#xff0c;本人仅对知识点做做笔记&#xff0c;如有学习需要请支持官方正版。 该系列目录&#xff1a;…