Scala 访问修饰符
Scala 访问修饰符基本和Java的一样,分别有:private,protected,public。
如果没有指定访问修饰符,默认情况下,Scala 对象的访问级别都是 public。
Scala 中的 private 限定符,比 Java 更严格,在嵌套类情况下,外层类甚至不能访问被嵌套类的私有成员。
私有(Private)成员
用 private 关键字修饰,带有此标记的成员仅在包含了……继续阅读 »
2年前 (2022-07-19) 104浏览 0评论
0个赞
Scala 方法与函数
Scala 有方法与函数,二者在语义上的区别很小。Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。
Scala 中的方法跟 Java 的类似,方法是组成类的一部分。
Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。
Scala 中使用 val 语句可以定义函数,def 语句定义方法。
cl……继续阅读 »
2年前 (2022-07-19) 93浏览 0评论
0个赞
Scala 变量
变量是一种使用方便的占位符,用于引用计算机内存地址,变量创建后会占用一定的内存空间。
基于变量的数据类型,操作系统会进行内存分配并且决定什么将被储存在保留内存中。因此,通过给变量分配不同的数据类型,你可以在这些变量中存储整数,小数或者字母。
变量声明
在学习如何声明变量与常量之前,我们先来了解一些变量与常量。
一、变量:
在程序运行过程中其值可能发生改变的量叫做变量。如:时间,年龄。
二、常……继续阅读 »
2年前 (2022-07-17) 254浏览 0评论
0个赞
Scala 简介
Scala 是 Scalable Language 的简写,是一门多范式的编程语言
联邦理工学院洛桑(EPFL)的Martin Odersky于2001年基于Funnel的工作开始设计Scala。
Funnel是把函数式编程思想和Petri网相结合的一种编程语言。
Odersky先前的工作是Generic Java和javac(Sun Java编译器)。Java平台的Scala于2003年底/2……继续阅读 »
2年前 (2022-06-29) 203浏览 0评论
0个赞
Scala 提取器(Extractor)
提取器是从传递给它的对象中提取出构造该对象的参数。
Scala 标准库包含了一些预定义的提取器,我们会大致的了解一下它们。
Scala 提取器是一个带有unapply方法的对象。unapply方法算是apply方法的反向操作:unapply接受一个对象,然后从对象中提取值,提取的值通常是用来构造该对象的值。
以下实例演示了邮件地址的提取器对象:
实例
object Test……继续阅读 »
2年前 (2022-06-26) 384浏览 0评论
0个赞
Scala 正则表达式
Scala 通过 scala.util.matching 包中的 Regex 类来支持正则表达式。以下实例演示了使用正则表达式查找单词 Scala :
实例
import scala.util.matching.Regex
object Test {
def main(args: Array[String]) ……继续阅读 »
2年前 (2022-06-23) 113浏览 0评论
0个赞
Scala 数组
Scala 语言中提供的数组是用来存储固定大小的同类型元素,数组对于每一门编辑应语言来说都是重要的数据结构之一。
声明数组变量并不是声明 number0、number1、…、number99 一个个单独的变量,而是声明一个就像 numbers 这样的变量,然后使用 numbers[0]、numbers[1]、…、numbers[99] 来表示一个个单独的变量。数组中某个指定的……继续阅读 »
2年前 (2022-06-18) 137浏览 0评论
0个赞
Scala 教程
Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。
Scala 运行在 Java 虚拟机上,并兼容现有的 Java 程序。
Scala 源代码被编译成 Java 字节码,所以它可以运行于 JVM 之上,并可以调用现有的 Java 类库。
谁适合阅读本教程?
本教程适合想从零开始学习 Scala 编程语言的开发人员。当然本教程也……继续阅读 »
2年前 (2022-06-16) 174浏览 0评论
0个赞
Scala 安装
Scala 语言可以运行在Window、Linux、Unix、 Mac OS X等系统上。
Scala是基于java之上,大量使用java的类库和变量,使用 Scala 之前必须先安装 Java(>1.5版本)。
Mac OS X 和 Linux 上安装 Scala
第一步:Java 设置
确保你本地已经安装了 JDK 1.5 以上版本,并且设置了 JAVA_HOME 环境变量及 JDK 的……继续阅读 »
2年前 (2022-06-15) 258浏览 0评论
0个赞
Scala 异常处理
Scala 的异常处理和其它语言比如 Java 类似。
Scala 的方法可以通过抛出异常的方法的方式来终止相关代码的运行,不必通过返回值。
抛出异常
Scala 抛出异常的方法和 Java一样,使用 throw 方法,例如,抛出一个新的参数异常:
throw new IllegalArgumentException
捕获异常
异常捕捉的机制与其他语言中一样,如果有异常发生,catch……继续阅读 »
2年前 (2022-06-12) 103浏览 0评论
0个赞
Scala 类和对象
类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。
我们可以使用 new 关键字来创建类的对象,实例如下:
实例
class Point(xc: Int, yc: Int) {
var x: Int = xc
&nbs……继续阅读 »
2年前 (2022-06-12) 120浏览 0评论
0个赞
Scala 字符串
以下实例将字符串赋值给一个常量:
实例
object Test {
val greeting: String = "Hello,World!"
def main(args: Array[String]) {
println……继续阅读 »
2年前 (2022-06-10) 135浏览 0评论
0个赞
Scala 基础语法
如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法。
Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的。
我们可以认为 Scala 程序是对象的集合,通过调用彼此的方法来实现消息传递。接下来我们来理解下,类,对象,方法,实例变量的概念:
对象 –
对象有属性和行为。例如:一只狗的状属性……继续阅读 »
2年前 (2022-06-09) 127浏览 0评论
0个赞
Scala 循环
有的时候,我们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。
编程语言提供了更为复杂执行路径的多种控制结构。
循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的流程图:
循环类型
Scala 语言提供了以下几种循环类型。点击链接查看每个类型的细节。
循环类型
描述
while 循环
运行一系……继续阅读 »
2年前 (2022-06-09) 182浏览 0评论
0个赞
Scala Collection
Scala提供了一套很好的集合实现,提供了一些集合类型的抽象。
Scala 集合分为可变的和不可变的集合。
可变集合可以在适当的地方被更新或扩展。这意味着你可以修改,添加,移除一个集合的元素。
而不可变集合类,相比之下,永远不会改变。不过,你仍然可以模拟添加,移除或更新操作。但是这些操作将在每一种情况下都返回一个新的集合,同时使原来的集合不发生改变。
接下来我们将为大家介绍几种常用集……继续阅读 »
2年前 (2022-06-08) 163浏览 0评论
0个赞
Scala Trait(特征)
Scala Trait(特征) 相当于 Java 的接口,实际上它比接口还功能强大。
与接口不同的是,它还可以定义属性和方法的实现。
一般情况下Scala的类只能够继承单一父类,但是如果是 Trait(特征) 的话就可以继承多个,从结果来看就是实现了多重继承。
Trait(特征) 定义的方式与类类似,但它使用的关键字是 trait,如下所示:
实例
trait Equal {……继续阅读 »
2年前 (2022-06-07) 214浏览 0评论
0个赞
Scala 闭包
闭包是一个函数,返回值依赖于声明在函数外部的一个或多个变量。
闭包通常来讲可以简单的认为是可以访问一个函数里面局部变量的另外一个函数。
如下面这段匿名的函数:
val multiplier = (i:Int) => i * 10
函数体内有一个变量 i,它作为函数的一个参数。如下面的另一段代码:
val multiplier = (i:Int) => i * factor
……继续阅读 »
3年前 (2022-06-01) 147浏览 0评论
0个赞
Scala 模式匹配
Scala 提供了强大的模式匹配机制,应用也非常广泛。
一个模式匹配包含了一系列备选项,每个都开始于关键字 case。每个备选项都包含了一个模式及一到多个表达式。箭头符号 => 隔开了模式和表达式。
以下是一个简单的整型值模式匹配实例:
实例
object Test {
def main(args: Array[String]……继续阅读 »
3年前 (2022-05-30) 162浏览 0评论
0个赞
Scala Iterator(迭代器)
Scala 集合
Scala Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法。
迭代器 it 的两个基本操作是 next 和 hasNext。
调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。
调用 it.hasNext() 用于检测集合中是否还有元素。
让迭代器 it 逐个返回所有元素最简单的方法是使用 while 循环:
实例……继续阅读 »
3年前 (2022-05-30) 121浏览 0评论
0个赞
Scala 文件 I/O
Scala 进行文件写操作,直接用的都是 java中 的 I/O 类 (java.io.File):
实例
import java.io._
object Test {
def main(args: Array[String]) {
val writer = ne……继续阅读 »
3年前 (2022-05-27) 170浏览 0评论
0个赞
Scala 数据类型
Scala 与 Java有着相同的数据类型,下表列出了 Scala 支持的数据类型:
数据类型
描述
Byte
8位有符号补码整数。数值区间为 -128 到 127
Short
16位有符号补码整数。数值区间为 -32768 到 32767
Int
32位有符号补码整数。数值区间为 -2147483648 到 2147483647
Long
64位有符号补码整数。数值区……继续阅读 »
3年前 (2022-05-25) 302浏览 0评论
0个赞
Scala 运算符
一个运算符是一个符号,用于告诉编译器来执行指定的数学运算和逻辑运算。
Scala 含有丰富的内置运算符,包括以下几种类型:
算术运算符
关系运算符
逻辑运算符
位运算符
赋值运算符
接下来我们将为大家详细介绍以上各种运算符的应用。
算术运算符
下表列出了 Scala 支持的算术运算符。
假定变量 A 为 10,B 为 20:
运算符
描述
实例
+
加号
A……继续阅读 »
3年前 (2022-05-15) 184浏览 0评论
0个赞