为什么会用到集合类?面向对象语言对事物的体现都是以对象的方式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式。 数组虽然也可以存储对象,但长度固定。集合长度可变。数组中可以存储基本数据类型,集合只能存...
分类:
其他好文 时间:
2014-11-23 17:24:31
阅读次数:
190
列表列表的初始化及对其首尾的访问:scala> val colors = List("red", "blue", "green")colors: List[String] = List(red, blue, green)scala> colors.headres15: String = redsca...
分类:
其他好文 时间:
2014-11-22 22:59:20
阅读次数:
270
6.8.1 映射、筛选和折叠(Mapping,filtering, and folding)
映射、筛选和折叠是函数编程中最常见的操作;在处理函数式列表时,我们已经用到过,但它们还支持所有其他的集合类型(我们将在第十和十二章讨论其中一部分);这些操作并不限于集合,所有的操作都可用于处理选项类型。
清单 6.25 显示了映射、筛选和折叠函数的签名类型,清单中包括了我们尚未讨论过的Optio...
分类:
移动开发 时间:
2014-11-20 12:09:11
阅读次数:
183
集合类型数组重复值的初始化除了普通的初始化方法,我们可以通过 init(count: Int, repeatedValue: T) 来初始化一个数组并填充上重复的值:// [0.0,0.0,0.0]
var threeDoubles = [Double](count:3,repeatedValue:0.0)
带索引值的遍历我们可以用 for in 遍历数组,如果想要 index 的话,可以用 en...
分类:
编程语言 时间:
2014-11-19 20:37:42
阅读次数:
275
在使用JSONObject和JSONArray的过程中,往往让人惊叹它的神奇之处,能够很方面的把json对象和bean互相转换,一直在思考究竟后台如何实现的,虽然通过看源码可以得出答案,但毕竟源码过于繁复,短时间内难以尽解,不如自己思考:如果这个功能是我设计的,我会怎么实现呢?其实无非就是使用反射而已,加上循环和迭代,把集合类型和嵌套的对象都迭代出来。
被序列化的类详见:http://blog....
分类:
其他好文 时间:
2014-11-19 16:06:09
阅读次数:
179
6.7.3.1 在 C# 中实现 fold
与 fold 有相同行为的操作,在 .NET 库中也有,但是,名字叫Aggregate(聚合)。通常,它是能够在任何集合类型上运行的扩展方法,我们也可以像 F# 函数一样使用它。清单 6.21 是我们用 C# 3.0 重写前面示例的代码。在 F# 中,我们用元组来保存在聚合过程中的状态。你也许还记得以前的几章中,我们曾提到过,C# 3.0 中的...
6.7.2.1 处理列表
我们看一个有关使用筛选和映射更大的示例,在 F# 库中的两个函数适用于各种集合类型,但我们将只用它来处理我们已经很熟悉的列表;在 C# 中,这些方法可用于任何实现了 IEnumerable 接口的集合,所以,我们将使用泛型 .NET List 类。清单 6.21 显示了我们将要处理数据的初始化。
清单 6.21 有关城市人口的数据 (C# and F#)...
分类:
其他好文 时间:
2014-11-19 12:43:40
阅读次数:
130
1、综述 所有集合类都位于java.util包下。集合中只能保存对象(保存对象的引用变量)。(数组既可以保存基本类型的数据也可以保存对象)。 当我们把一个对象放入集合中后,系统会把所有集合元素都当成Object类的实例进行处理。从JDK1.5以后,这种状态得到了改进:可以使用泛型来限制集合里元素的类...
分类:
编程语言 时间:
2014-11-16 22:52:28
阅读次数:
284
画类图最重要的就是抽象出类,先来回忆类的基本内容。
一、类
1、类的概念:
类是面向对象程序设计的中的一个基本概念,类是具有相同属性、方法、语义和关系的一组对象的集合。
2、类的分类:
实体类:保存要放进永久存储的信息
边界类:位于系统与外界的交界处。包括所有的窗体、报表、打印机等硬件接口以及与其他系统的接口。
控制类:负责协调其他类的工作。一般每个用例都有一个控制...
分类:
其他好文 时间:
2014-11-16 18:43:34
阅读次数:
240
1、散列码:
Object中的HashCode方法会返回该对象的的内存真实地址的整数化表示,这个形象的不是真正抵制的整数值就是哈希码。
2、利用哈希码向集合中插入数据的顺序?
向HashSet中添加对象时,HashSet先通过该对象的HashCode()计算出相应的桶,然后再根据equals()方法找到相应的对象,如果容器中已存在该对象则不再添加,如果...
分类:
其他好文 时间:
2014-11-16 16:03:48
阅读次数:
155