上一页 1 2 3 4 5 6 ··· 10 下一页
摘要: 引出问题: 我们在 coding 的时候,经常会碰到这样的问题:我需要 copy 一个对象,并且我需要深度复制这个对象。 当然,我们可以特事特办,例如, new 一个对象,然后依次调用 set() 方法。 但是,更多的时候,也许我们希望有一些通用的方法去达到这个目的。 首先,来看一下什么是深度复制? 阅读全文
posted @ 2019-05-05 16:18 Gerrard_Feng 阅读(656) 评论(0) 推荐(0) 编辑
摘要: 1. 占位符 _ 针对 Scala 基础(7)—— 函数字面量和一等函数 中最后提到的,关于 filter 函数字面量的精简写法,可以使用占位符 _ 来代替。 占位符_,用来表示一个或者多个参数。(这里的多个参数不是表示一个下划线代表多个参数,而是多个下划线可以代表多个参数) 在函数字面量的表达中, 阅读全文
posted @ 2019-01-21 23:31 Gerrard_Feng 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 1. 函数字面量 在 Scala 基础(3)—— 基础类型和基础操作 中提到了函数字面量,这里具体解释函数字面量的语法。 下面展示一个具体的函数字面量,它由三部分组成: 圆括号内部的参数列表 右箭头 函数体 2. 一等函数 一等函数可以说是 Scala 中非常重要的特性。 所谓一等函数,就是使用函数 阅读全文
posted @ 2019-01-18 00:42 Gerrard_Feng 阅读(748) 评论(0) 推荐(0) 编辑
摘要: 1. Scala 的内建控制结构 Scala 有几个内建的控制结构,包括: if 表达式 while 循环和 do-while 循环 for 表达式 try 表达式 match 表达式 Scala 的所有控制结构都返回某种值作为结果,这是函数式编程采取的策略: 程序是被用来计算出某个值,所以程序的各 阅读全文
posted @ 2019-01-17 01:44 Gerrard_Feng 阅读(473) 评论(0) 推荐(0) 编辑
摘要: 这篇文章主要是为了从头开始,详细介绍懒汉模式的实现,以及实现的原因。 之前写过一篇比较浅的懒汉模式,可以优先参照:设计模式(一)单例模式:2-懒汉模式 Step1:基础的懒汉模式 基础的懒汉模式保证了在调用 getInstance() 方法的时候才第一次初始化单例对象。 但是这么做无法保证在多线程环 阅读全文
posted @ 2019-01-16 00:43 Gerrard_Feng 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 有了 Scala 基础(4)—— 类和对象 的前提,现在就可以来构建一个基于 Scala 的函数式对象。 下面开始构造一个有理数对象 Rational。 1. 主构造方法和辅助构造方法 对于每一个类的定义,Scala 只允许一个主构造方法,主构造方法的入参紧跟在类定义的后面: 你可能需要一个分母 d 阅读全文
posted @ 2019-01-15 00:33 Gerrard_Feng 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 1. 类、字段和方法 Scala 用 class 关键字定义类,一旦定义好一个类,就可以使用 new 关键字创建对象。 Scala 使用 new 调用无参构造器时,可以不使用 (),推荐不使用括号: 在类的定义中,可以填入字段(field)和方法(method),两者统称为成员(member)。 字 阅读全文
posted @ 2019-01-09 23:31 Gerrard_Feng 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 1. Scala 的一些基础类型 Scala 提供了 8 种基础类型,对应 Java 的 8 种基本数据类型。 其中包括: 整数类型:Byte, Short, Int, Long, Char 浮点类型:Float, Double 布尔类型:Boolean 与 Java 不同,这 8 种数据在 Sca 阅读全文
posted @ 2019-01-08 23:59 Gerrard_Feng 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 1. Scala 的面向对象 在学习 Java 的时候,我们说 Java 是一门面向对象的语言,然而 Java 其实并没有完全遵守“一切皆对象”这一准则。 例如:Java 的8种基本数据类型 & Java 的数组。 但是 Scala 相比而言,是一门更加纯粹的面向对象的语言,因为它完全遵守“一切皆对 阅读全文
posted @ 2018-12-16 16:51 Gerrard_Feng 阅读(744) 评论(0) 推荐(0) 编辑
摘要: 1. 使用 val & var 定义变量 Scala 中的变量被分为2种:val 和 var。其含义于 Java 中的 final 关键字类似。 val 等同于被 final 修饰过的变量, 即一旦初始化便不可被重新赋值。 var 等同于未被 final 修饰过的变量,可以被重新赋值。 与 Java 阅读全文
posted @ 2018-12-16 14:08 Gerrard_Feng 阅读(1888) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 10 下一页