Big Data Memo

天行健,君子以自强不息;地势坤,君子以厚德载物。

Scala Lesson 8

Scala 类和对象 类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。 我们可以使用 new 关键字来创建类的对象,实例如下: class Point(xc: Int, yc: Int) { var x: Int = xc var y: I...

Scala Lesson 10

Scala Trait(特征) Scala Trait(特征) 相当于 Java 的接口,实际上它比接口还功能强大。 与接口不同的是,它还可以定义属性和方法的实现。 一般情况下Scala的类只能够继承单一父类,但是如果是 Trait(特征) 的话就可以继承多个,从结果来看就是实现了多重继承。 Trait(特征) 定义的方式与类类似,但它使用的关键字是 trait,如下所示...

Scale tuple

Scala 元组 与列表一样,元组也是不可变的,但与列表不同的是元组可以包含不同类型的元素。 元组的值是通过将单个的值包含在圆括号中构成的。例如: val t = (1, 3.14, "Fred") 以上实例在元组中定义了三个元素,对应的类型分别为[Int, Double, java.lang.String]。 此外我们也可以使用以上方式来定义: val t = new Tupl...

Scala Set

Scala Set(集合) Scala Set(集合)是没有重复的对象集合,所有的元素都是唯一的。 Scala 集合分为可变的和不可变的集合。 默认情况下,Scala 使用的是不可变集合,如果你想使用可变集合,需要引用 scala.collection.mutable.Set 包。 默认引用 scala.collection.immutable.Set,不可变集合实例如下...

Scala Option

为了让所有东西都是对象的目标更加一致,也为了遵循函数式编程的习惯,Scala 鼓励你在变量和函数返回值可能不会引用任何值的时候使用Option 类型。在没有值的时候,使用None,这是Option 的一个子类。如果有值可以引用,就使用Some 来包含这个值。 Some 也是Option 的子类。 注意 None 被声明为一个对象,而不是一个类,因为我们只需要它的一个实例。这...

Scala Map

Scala Map(映射) Map(映射)是一种可迭代的键值对(key/value)结构。 所有的值都可以通过键来获取。 Map 中的键都是唯一的。 Map 也叫哈希表(Hash tables)。 Map 有两种类型,可变与不可变,区别在于可变对象可以修改它,而不可变对象不可以。 默认情况下 Scala 使用不可变 Map。如果你需要使用可变集合,你需要显式的引入...

Scala List

Scala List(列表) Scala 列表类似于数组,它们所有元素的类型都相同,但是它们也有所不同:列表是不可变的,值一旦被定义了就不能改变,其次列表 具有递归的结构(也就是链接表结构)而数组不是。。 列表的元素类型 T 可以写成 List[T]。例如,以下列出了多种类型的列表: // 字符串列表 val site: List[String] = List("Runoob...

scala Iterators

Scala Iterator(迭代器) Scala Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法。 迭代器 it 的两个基本操作是 next 和 hasNext。 调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。 调用 it.hasNext() 用于检测集合中是否还有元素。 让迭代器 it 逐个返回所有元素最简单的方法是...

scala Lesson 7

Scala Collection Scala提供了一套很好的集合实现,提供了一些集合类型的抽象。 Scala 集合分为可变的和不可变的集合。 可变集合可以在适当的地方被更新或扩展。这意味着你可以修改,添加,移除一个集合的元素。 而不可变集合类,相比之下,永远不会改变。不过,你仍然可以模拟添加,移除或更新操作。但是这些操作将在每一种情况下都返回一个新的集合,同时使原来的集合...

scala Lesson 6

Scala 数组 Scala 语言中提供的数组是用来存储固定大小的同类型元素,数组对于每一门编辑应语言来说都是重要的数据结构之一。 声明数组变量并不是声明 number0、number1、…、number99 一个个单独的变量,而是声明一个就像 numbers 这样的变量,然后使用 numbers[0]、numbers[1]、…、numbers[99] 来表示一个个单独的变量。数组中某个指...