scala提取器

scala 提取器提取器是从传递给它的对象中提取出构造该对象的参数Scala 标准库包含了一些预定义的提取器,我们会大致的了解一下它们。Scala 提取器是一个带有 unapply 方法的对象。unapply方法算是apply方法的反向操作:unapply接受一个对象,然后从对象中提取值,提取的值通常是用来构造该对象的值import scala.collection.mutable.ArrayBu

- 阅读全文 -

LGPL协议

这是一份 GNU 较宽松公共许可证非正式的中文翻译。它不是自由软体基金会所发布,并且不能适用于使用 GNU LGPL 的软体 —— 只有 GNU LGPL 英文原文的版本才行。然而,我们希望这份翻译能帮助中文的使用者更了解 GNU LGPL。GNU 较宽松公共许可证1999.2, 第 2.1 版版权所有 (C) 1991, 1999 Free Software Foundation, Inc.59

- 阅读全文 -

scala模式匹配

scala 模式匹配scala 一个模式匹配包含了一系列备选项,每个都开始于关键字 case。每个备选项都包含了一个模式及一到多个表达式。箭头符号 => 隔开了模式和表达式。object Demo { def main(args: Array[String]): Unit = { println(matchDemo(2)) println(matchDemo(4))

- 阅读全文 -

BSD 开源协议

BSD开源协议是一个给于使用者很大自由的协议。可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。当你发布使用了BSD协议的代码,或者以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。不可以

- 阅读全文 -

scala迭代器

scala 迭代器迭代器用来遍历容器中的元素迭代器常用的两个方法:next() 和 hasNext()next() 返回容器内的下一个元素并且更新迭代器的状态(指向下一个元素);当容器中没有下一个元素时,调用该方法则会产生 NoSuchElementException 异常hasNext 返回容器是否拥有下一个元素import scala.collection.mutable.ArrayBuffe

- 阅读全文 -

scala 闭包

scala 闭包闭包是一个函数,返回值依赖于声明在函数外部的一个或多个变量闭包通常来讲可以简单认为是可访问一个函数里局部变量的另一个函数object Demo { def main(args: Array[String]): Unit = { var more = 1 val addMore = (x: Int) => x + more val addOne =

- 阅读全文 -

scala 数据类型

scala 数据类型scala 是纯的面向对象,scala 的数据类型就是对象数据类型描述Byte8位有符号补码整数。数值区间为 -128 到 127Short16位有符号补码整数。数值区间为 -32768 到 32767Int32位有符号补码整数。数值区间为 -2147483648 到 2147483647Long64位有符号补码整数。数值区间为 -9223372036854775808 到 9

- 阅读全文 -

scala 包

scala定义包scala 使用 package 关键字定义包类似 Java 定义方式package com.demo Class HelloWord {}类似 C# 的定义方式package com.demo { Class HelloWord }第二种方式可以在一个源文件中定义多个包。scala 引用scala使用 import 关键字引入包import java.awt.Color

- 阅读全文 -