上一页 1 2 3 4 5 6 7 ··· 36 下一页
摘要: 第6章介绍了Scala面向对象的一些基础概念。本章将接着第6章,更详细地介绍Scala对于面向对象编程的支持。我们将对比类之间的两个最基本的关系:组合和继承。组合的意思是一个类可以包含对另一个类的引用,并利用这个被引用的类来帮助它完成任务。而继承是超类/子类的关系。除此之外,我们还会探讨抽象类、无参 阅读全文
posted @ 2022-08-10 16:06 linbo.yang 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 控制抽象是这样的函数,满足如下条件 参数是函数 函数参数没有输入值也没有返回值 ()=>Unit 简化处理:fun(funName:=>Unit) 第7章指出,Scala并没有很多内建的控制抽象,因为它提供了让用户自己创建控制抽象的功能。第8章介绍了函数值。本章将向你展示如何应用函数值来创建新的控制 阅读全文
posted @ 2022-08-10 15:26 linbo.yang 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2022-08-10 14:14 linbo.yang 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 对于结果类型为Unit的方法,如ChecksumAccumulator的add方法,其执行目的是得到副作用。副作用通常是指改变方法外部的某种状态或者执行I/O的动作。对本例的add方法而言,其副作用是给sum重新赋值。那些仅仅因为其副作用而被执行的方法被称作过程(procedure)。// 位于Ch 阅读全文
posted @ 2022-08-09 18:30 linbo.yang 阅读(48) 评论(0) 推荐(0) 编辑
摘要: WithFilter (scala-lang.org) Scala 3 (scala-lang.org) 阅读全文
posted @ 2022-08-04 23:24 linbo.yang 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 考虑以下例子,我们试图将输入的List[Double] 和List[String] 区分开: // src/main/scala/progscala2/patternmatching/match-types.sc scala> for { | x <- Seq(List(5.5,5.6,5.7), 阅读全文
posted @ 2022-08-02 18:04 linbo.yang 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 正则表达式可以很方便地从符合特定结构的字符串中提取数据。Scala封装了Java 的正则表达式。以下给出一个示例: 1 // src/main/scala/progscala2/patternmatching/match-regex.sc 2 3 val BookExtractorRE = """B 阅读全文
posted @ 2022-08-02 17:54 linbo.yang 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 假设以下场景:你需要从对象中提取值,但你又想将一个变量赋给该对象的整体。该怎么做呢?我们来对前文中匹配Person 类的属性的实例做以下修改。 1 case class Address(street: String, city: String, country: String) 2 case cla 阅读全文
posted @ 2022-08-02 17:49 linbo.yang 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 偏函数(PartialFunction) 我们来讨论偏函数(PartialFunction,http://bit.ly/1yMpzEP)的性质。偏函数之所以“偏”,原因在于它们并不处理所有可能的输入,而只处理那些能与至少一个 case 语句匹配的输入( 将包在大括号内的一组case语句封装为函数,我 阅读全文
posted @ 2022-07-31 11:32 linbo.yang 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 庄子走在山中看见一棵大树枝叶繁茂,但伐木人却停在旁边不去砍它,庄子问其中缘故,对方回答 没什么用 ,庄子说 这颗树因为不材而能活到天年啊,庄子从山中出来在老朋友加歇脚,老朋友很开心,让童仆杀雁来招待他,童仆问,有一只能鸣叫,有一只不能鸣叫,请问杀哪只,主人说杀不能鸣叫的那只,弟子问庄子 昨天山中那棵 阅读全文
posted @ 2022-06-28 13:18 linbo.yang 阅读(706) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 36 下一页