
Scala从入门到入土
文章平均质量分 95
总结学习Scala从0到1 的过程以及重点知识沉淀
百思不得小赵
只管耕耘 莫问收获
展开
-
Scala 高阶(十一):隐式转换和泛型
在Scala中有一种特殊的机制,当编译器第一次编译失败的时候,会在当前的环境中查找能让代码编译通过的方法,用于将类型进行转换,实现二次编译。原创 2022-08-10 07:45:00 · 433 阅读 · 30 评论 -
Scala 高阶(十):Scala中的异常处理
异常机制程序在执行过程中发生了不正常的情况。}}语法格式try{}try中包含了可能产生异常的代码try后面是catch,catch可以有一个或多个,catch中是需要捕获的异常finally表示不管是出现异常,还是没有出现异常,finally里的代码都执行,finally和catch可以分开使用,但finally必须和try一块使用try{}catch(异常1|异常2|异常3|......)jdk8新特性!!try{...原创 2022-07-28 11:15:00 · 1269 阅读 · 41 评论 -
Scala 高阶(九):Scala中的模式匹配
基本语法模式匹配语法中,采用match关键字声明,每个分支采用case关键字进行声明,当需要匹配时,会从第一个case分支开始,如果匹配成功,那么执行对应的逻辑代码,如果匹配不成功,继续执行下一个分支进行判断。如果所有case都不匹配,那么会执行case_分支,类似于Java中default语句。valx//示例使用模式匹配实现简单的二元运算vala=25valb=21defmatchOualop(op如果所有case都不匹配,那么会执行case_。...原创 2022-07-28 07:45:00 · 1401 阅读 · 52 评论 -
Scala 高阶(八):集合内容汇总(下篇)
在上一篇集合的分享中,讲解了Scala中集合的基本概述以及常用集合的基本操作,本次住要分享Scala中集合更高级的操作。原创 2022-07-20 07:45:00 · 691 阅读 · 31 评论 -
Scala 高阶(七):集合内容汇总(上篇)
在JavaList集合、Set集合、Map集合。其中List集合、Set集合继承自Collection。它们都是接口。Scala的集合有三大类序列Seq、集Set、映射Map,所有的集合都扩展自Iterable特质。、可变集合s不可变集合,就是指该集合对象不可修改,每次修改就会返回一个新对象,而不会对原对象进行修改。类似于java中的String对象。可变集合,就是这个集合可以直接对原对象进行修改,而不会返回新的对象。类似于java中StringBuilder对象和就是j。...原创 2022-07-19 07:45:00 · 4695 阅读 · 97 评论 -
Scala 基础 (六):面向对象(下篇)
在之前的文章中总结了Scala面向对象模块基础的内容,接下来学习面向对象的高阶内容。如何定义?如果父类为抽象类,那么子类需要将抽象的属性和方法实现,否则子类也需声明为抽象类重写非抽象方法需要用 修饰,重写抽象方法则可以不加 子类中调用父类的方法使用 关键字子类对抽象属性进行实现,父类抽象属性可以用 修饰;子类对非抽象属性重写,父类非抽象属性只支持 类型,而不支持 。因为修饰为可变量,子类继承后可以直接使用修改,没有必要重写。举个栗子:匿名子类和 Java 一样,可以通过包含带有定义原创 2022-07-02 11:52:12 · 419 阅读 · 4 评论 -
Scala 基础 (五):面向对象(上篇)
Scala 的面向对象思想和 Java 的面向对象思想和概念是一致的,但是对应的语法有所不同。基本语法包管理的作用包的命名Scala中的两种包管理方式举个栗子:嵌套风格的好处:包对象定义包对象:Scala 中可以为每个包定义一个同名的包对象,定义在包对象中的成员,作为其对应包下所有 class 和 object 的共享变量,可以被直接访问。定义当前包共享的属性和方法。必须为同一个包下面的单例对象或者类才能访问到导入包Scala中导入了三个默认的包:定义:在Java里面,声明类需要使用进行原创 2022-07-02 07:45:00 · 427 阅读 · 7 评论 -
Scala 基础 (四):函数式编程【从基础到高阶应用】
学习函数时编程之前我们先来了解一下目前比较流行的、不同的编程范式。编程范式:函数式编程语言中,所有值都是常量,都是一个值。中推荐大家能用常量就用常量(),符合函数式编程的基本思想。函数式编程中每段程序都会有一个返回值,(、),本质上就是一个映射关系,表达式进行求值,做函数的映射关系。函数式编程不关心计算机底层的实现,对开发者更加友好。命令式编程对于计算机更加的友好,执行效率比较高,函数式编程对于开发者的效率更高,但是执行效率比较低。函数式编程无副作用,利于并行处理,所以Scala特别利于应用于大数据处理,比原创 2022-06-30 07:45:00 · 1440 阅读 · 47 评论 -
Scala 基础 (三):运算符和流程控制
Scala中的运算符和Java中的运算符基本相同。算术运算 ,和在一元运算表中示正号和负号,在二元运算中表示加和减。表示整除,只保留整数部分舍弃掉小数部分除此之外,也表示两个字符串相加关系运算逻辑运算赋值运算位运算在 Scala 中其实是没有运算符的,所有运算符都是方法的调用。举个栗子:二、流程控制Scala中的流程控制与其他的编程语言一样,也包含分支语句、循环语句等。基本语法:举个栗子:特殊之处:举个栗子:forScala中的循环被称为的推导式范围遍历:表示循环变量 相当于将遍历值赋给原创 2022-06-28 07:45:00 · 1327 阅读 · 70 评论 -
Scala 基础 (二):变量和数据类型
如何定义?举个栗子:由于Scala是一个函数式编程语言,所以能用常量的地方不用变量。重要的结论:举个栗子:Scala中的关键字合集:• • • • • • • • 基本的语法举个栗子:键盘输入基本语法举个栗子:文件输入输出:二、数据类型Java中的数据类型Scala中的数据类型举个栗子:浮点类型 [4] 32 位, IEEE 754 标准的单精度浮点数 [8] 64 位 IEEE 754 标准的双精度浮点数默认为类型举个栗子:字符类型字符类型是 ,表示原创 2022-06-25 08:00:00 · 720 阅读 · 34 评论 -
十分钟带汝入门大数据开发语言Scala
Scala是一门多范式的编程语言,一种类似Java的编程语言 ,设计初衷是实现可伸缩的语言 、并集成面向对象编程和函数式编程的各种特性。目前最主流的大数据开发框架Spark的实现就是通过Scala去实现的。Scala可以与Java互操作。它用scalac这个编译器把源文件编译成Java的class文件(即在JVM上运行的字节码),也可以从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的代码。Scala 与 Java 的关系Scala是基于Java去实现的,可以理解为是对原创 2022-06-08 07:45:00 · 41895 阅读 · 153 评论