加载中
基本类型和操作之富包装器

Scala基本类型的可调用的方法远多于前面讲到的。如: 这些方法的使用要通过隐式转换,这会在后面章节讲到。 现在要知道的就是,前面介绍过的每个基本类型,都对应着一个“富包装器”,它提供...

2014/06/06 14:01
148
scala入门之编写scala脚本

尽管scala的设计目的是帮助程序员建造大型系统。但它也能适应于制造小型的脚本。例如把以下代码放在hello.scala文件中: println("Hello,world,form ascript!") 然后运行: scala脚本的命令...

2014/06/05 19:56
5.3K
关于scala标识符

Scala在构造符方面有非常灵活的规则,共有四种标识符构成方式: 字母数字标识符 字母数字标识符以字母或下划线开始,之后可以跟字母、数字或下划线。“$”字符也被当作是字母,但被保留作为s...

2014/06/07 10:30
787
函数式对象之辅助构造器

有些时候一个类里需要多个构造器。Scala里主构造器之外的构造器被称为辅助构造器。比方说,分母为1的有理数只写分子的话就更简洁。因此,Rational(5,1)简写成Rational(5)或许感觉会更好些。而...

2014/06/06 16:26
100
scala开发工具之使用eclipse开发scala程序

前面我们已经安装了:Java1.7版本与scala2.10.1版本,那以我们这里就选择eclipse4.3(Kepler),最好选择:eclipse-SDK版本。详细情况可以查看scala IDE的要求: http://scala-ide.org/ http...

2014/06/05 20:20
287
基本类型和操作之基本类型

下表显示了Scala的基本类型和它们的取值范围: 值类型 范围 Byte 8位有符号补码整数 Short 16位有符号补码整数 Int 32位有符号补码整数 Long 64位有符号补码整数 Char 16位无符号Unicode字符...

2014/06/05 22:02
84
scala入门之使用scala解释器

scala解释器是编写scala表达式和程序的交互式“shell”。只要在解释器里输入表达式,它就能计算并打印结果值。scala的交互式shell就叫做scala。可以在命令提示符里输入scala,执行效果如下:...

2014/06/05 19:20
838
类和对象之Scala程序

想要编写能够独立运行的scala程序,就必须创建有main方法(仅带一个参数Array[String],且结果类型为Unit)的单例对象。任何拥有合适签名的main方法的单例对象都可以用来作为程序的入口点。如...

2014/06/05 21:32
136
控制抽象之简化客户代码

前一个例子演示了高阶函数能在你实现API的同时,帮助减少代码重复。高阶函数的另一个重要应用是把它们放在API里使客户代码更简洁。scala的集合类型的特定用途循环方法(这些特殊目的的循环方...

2014/06/10 21:57
57
scala入门之变量定义

scala有两种变量,val和var。val类似于Java里的final变量(字节码反编译成Java,其实就是final的变量)。一旦初始化了,val就不能再被赋值。相反,var如同Java里面的非final变量,可以在它的...

2014/06/05 19:34
5.6K
组合与继承之重写方法和字段

接上篇blog,scala里的字段和方法属于相同的命名空间,这让字段可以重写无参数方法。例如,你可以通过改变ArrayElement类中contents的实现将其从一个方法变为一个字段,而无需修改类Element...

2015/08/18 11:02
121
scala入门之windows下安装scala

因为scala是JVM上的语言,所以我们首先要安装Java运行环境。从oracle官网下载:jdk-7u21-windows-x32.exe(目前最新版本),然后安装。注意,scala只需要java的运行环境,也就是只需要安装:...

2014/06/05 19:14
9.6K
内建控制结构之while循环

Scala的while循环与其他语言一致。包括状态判断和循环体,只要状态保持真,循环体就一遍遍被执行,如: package scala object ScalaTest {     def main(args:Array[String]):Unit ...

2014/06/07 11:47
83
函数和闭包之偏应用函数

偏应用函数(Partial Applied Function)的定义:偏应用函数就是缺少部分或全部参数的函数。 尽管前面的例子里下划线(_)替代的只是单个参数,但你还可以使用单个下划线替换整个参数列表。再...

2014/06/08 11:11
242
scala入门之REPL

Scala解释器读到一个表达式,对它进行求值,将它打印出来,接着再继续读下一个表达式。这个过程被称做读取--求值--打印--循环,即:REPL。 从技术上讲,scala程序并不是一个解释器。实际发生...

2014/06/05 20:18
1K
类和对象之分号推断

Scala程序里,语句末尾的分号通常是可选的。愿意可以加,若一行里仅有一个语句也可以不加。不过,如果一行包含多条语句时,分号则是必须的: val s = “hello”; println(s); 输入跨越多...

2014/06/05 21:01
61
内建控制结构之变量范围

如果你是java程序员,你会发现scala的范围规则几乎是java的翻版。然而,两者之间仍然有一个差别:scala允许在嵌套范围内定义同名变量。 Scala程序里所有的变量定义都存在有效作用范围。最常见...

2014/06/07 16:11
38
函数式对象之定义操作符

当前Rational加法的实现只是可用,但不够好用。你或许会困惑为什么整数或浮点数可以写成:x + y,而有理数就必须写成: x.add(y) 或者 x add y 。有理数和别的数应该是一样的。数学的角度上看...

2014/06/06 17:36
56
函数和闭包之尾递归

前面提到过,如果想把更新var的while循环转换成仅使用val这种更函数式的风格的话,有时候你可以使用递归。下面的例子是通过不断改善猜测数字来逼近一个值的递归函数: def approximate(gue...

2014/06/08 15:53
299
scala入门之识别函数式风格

scala允许指令式的编程风格,但是鼓励采用函数式的风格。如果你是从指令式的背景转到scala来的-----例如,如果你是Java程序员------那么学习scala将面对的主要挑战就是理解怎样用函数式的风格...

2014/06/05 20:05
180

没有更多内容

加载失败,请刷新页面

返回顶部
顶部