![](https://img-blog.csdnimg.cn/20200912171940717.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Scala
scala
故明所以
清心、静思、实干、寡言。
展开
-
IDEA安装完插件Scala后 通过add frameworks support找到不到scala插件
如下图所示:创建完项目,准备添加scala插件时却发现找不到解决方法:现在首先project structure 中删除已经存在插件:在里面的Modules中找到已经存在的:选中点击移除:然后重新add frameworks support添加:查看是否添加成功:在 External Libraries 目录下 出现Scala的sdk...原创 2020-09-19 10:36:48 · 9929 阅读 · 1 评论 -
Scala构造器注意事项和细节
1、scala构造器作用是完成对新对象的初始化,构造器没有返回值。2、主构造器的声明直接放置于类名之后。3、主构造器会执行类定义中的所有语句,这里可以体会到scala的函数式编程和面向对象编程融合在一起,即:构造器也是方法(函数),传递参数和使用方法和前面的函数部分内容没有区别。4、如果主构造器无参数,小括号可省略,构建对象时调用的构造方法的小括号也可以省略。5、辅助构造器名称为this(这个和java是不一样的),多个辅助构造器通过不同参数列表进行区分,在底层就是f构造器重载。6、如果想让主构原创 2020-09-06 18:17:50 · 221 阅读 · 1 评论 -
Scala函数式编程注意事项和细节讨论
1、函数的形参列表可以是多个, 如果函数没有形参,调用时 可以不带()2、形参列表和返回值列表的数据类型可以是值类型和引用类型object Details01{ def main(args:Array[String]):Unit={//形参列表和返回值列表的数据类型可以是值类型和引用类型 val tiger = new Tiger val tiger2=test01(10,tiger) println(tiger2.name) // jack原创 2020-09-06 12:04:05 · 154 阅读 · 0 评论 -
Scala语言的数据类型
Scala 与 Java 有着相同的数据类型, Scala中数据类型都是对象,也就是说 scala 没有 java中的原生类型。Scala 数据类型分为两大类 AnyVal(值类型) 和 AnyRef(引用类型), 注意:不管是 AnyVal 还是 AnyRef 都是对象。关系图如下:一、Scala的数据架构在 scala 中有一个根类型 Any ,他是所有类的父类。scala 中一切皆为对象,分为两大类 AnyVal(值类型), AnyRef(引用类型), 他们都是 Any 子类Null原创 2020-09-05 17:05:01 · 2921 阅读 · 0 评论 -
Scala语言的特点
(1)运行在 JVM 和 JavaScript 之上的语言Scala运行在JVM上,兼容现有的Java程序,集成面向对象编程和函数式编程的各种特性,轻松实现和丰富的 Java 类库互联互通。Scala 不仅利用了 JVM 的高性能以及最优化性,Java 丰富的工具及类库生态系统也为其所用。不过 Scala 并不是只能运行在 JVM 之上。(2)静态类型在 Scala 语言中,静态类型(static typing)是构建健壮应用系统的一个工具。Scala 修正了 Java 类型系统中的一些缺陷,此外通过原创 2020-09-05 09:04:10 · 4655 阅读 · 0 评论 -
scala、java和jvm之间的关系
scala来源于java,但又高于javascala的设计者Martin Odersky就是一个JAVA控,这位牛人设计了javac和编写了jdk中的通用代码。可以说java语言本身就是Martin Odersky一步一步看着长大的。所以scala可以说打根起就和JAVA有着远远悠长的血缘关系。Martin Odersky还在写java那会,就立志开发达成一个目标:让写程序这样一个基础工作变得高效、简单、且令人愉悦!因此可以说scala是这个目标实现过程中的一个重要里程碑。因此可以说java是职业装,s原创 2020-09-05 08:31:03 · 580 阅读 · 0 评论 -
Scala语言的高级特性
1、什么是泛型类和Java或者C++一样,类和特质可以带类型参数。在Scala中,使用方括号来定义类型参数测试程序:2、什么是泛型函数函数和方法也可以带类型参数。和泛型类一样,我们需要把类型参数放在方法名之后。注意:这里的ClassTag是必须的,表示运行时的一些信息,比如类型。3、Upper Bounds 与 Lower Bounds类型的上界和下界,是用来定义类型变量的范围...原创 2020-05-08 11:38:33 · 252 阅读 · 0 评论 -
Scala中的集合
1、可变集合和不可变集合(1)可变集合(2)不可变集合:集合从不改变,因此可以安全地共享其引用。甚至是在一个多线程的应用程序当中也没问题。集合的操作:2、列表(1)不可变列表(List)不可变列表的相关操作:(2)可变列表(LinkedList):scala.collection.mutable3、序列常用的序列有:Vector和Range(1)Vector是...原创 2020-05-08 10:34:59 · 254 阅读 · 0 评论 -
Scala语言的函数式编程
1、Scala中的函数在Scala中,函数是“头等公民”,就和数字一样。可以在变量中存放函数,即:将函数作为变量的值(值函数)。2、匿名函数3、带函数参数的函数,即:高阶函数示例1:(1)首先,定义一个最普通的函数(2)再定义一个高阶函数(3)分析这个高阶函数调用的过程示例2:在这个例子中,首先定义了一个普通的函数mytest,然后定义了一个高阶函数myFunctio...原创 2020-05-07 20:09:49 · 324 阅读 · 0 评论 -
Scala语言的面向对象
1、面向对象的基本概念把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象面向对象的三大特征:封装继承多态2、类的定义简单类和无参方法:案例:注意class前面没有public关键字修饰。如果要开发main方法,需要将main方法定义在该类的伴生对象中,即:object对象中3、属性的getter和setter方法(1)当定义属性是private时候,s...原创 2020-05-07 18:05:12 · 388 阅读 · 0 评论 -
Scala语言基础
1、Scala简介Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性。Scala运行于Java平台(Java虚拟机),并兼容现有的Java程序。它也能运行于CLDC配置的Java ME中。目前还有另一.NET平台的实现,不过该版本更新有些滞后。Scala的编译模型(独立编译,动态类加载)与Java和C#一样,所以Scala代码可以调用Java类库(对于.NE...原创 2020-05-06 17:31:20 · 164 阅读 · 0 评论