1.数组简介NSArray:用来存储有序数组,它是不可变的(不能插入删除数据元素),也不能存储C语言中的基本数据类型(int、float、double、enum、struct),也不能存nil,如果需要使用基本数据类型,需要先转成Objective-c中的对象,用@包装下。NSMutableArra...
分类:
移动开发 时间:
2015-04-23 21:17:01
阅读次数:
301
const修饰普通变量和指针const修饰变量,一般有两种写法:12constTYPE value;TYPEconstvalue;这两种写法在本质上是一样的。它的含义是:const修饰的类型为TYPE的变量value是不可变的。对于一个非指针的类型TYPE,无论怎么写,都是一个含义,即value值不...
分类:
其他好文 时间:
2015-04-23 19:29:26
阅读次数:
261
简单介绍:1.String类:String的值是不可变的,导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费内存空间。2.StringBuffer:StringBuffer的值是可变的,任何对它指向的字符串的操作都不会产生新的对象。3.StringBuilder:和St...
分类:
其他好文 时间:
2015-04-23 13:00:59
阅读次数:
122
经历了第二部分的一些难点课程,我们终于来到了这一课,一个听起来有点酷酷的名字: 动态分配。
“万水千山总是情,分配也由系统定”
到目前为止,我们创建的变量都是编译器为我们自动构建的,这是简单的方式。其实还有一种更偏手动的创建变量的方式,我们称为“动态分配”(Dynamic Allocation)。
动态分配的一个主要好处就是可以在内存中“预置”一定空间大小,在编译时还不知道到底会用多少。使用这个技术,我们可以创建大小可变的数组。到目前为止我们所创建的数组都是大小固定不可变的。而学完这一课后我们就会创建所谓“...
分类:
编程语言 时间:
2015-04-23 11:02:35
阅读次数:
173
此处以NSString为例,讲述声明一个NSString属性用copy要优于使用strong。这同样适用于遵守NSCoding协议的不可变类(immutable class),如NSNumber、NSArray、NSSet等。上面提到的这些类都有一个可变(mutable)的版本。选择使用copy的理...
分类:
其他好文 时间:
2015-04-22 00:32:25
阅读次数:
161
最近在浏览某篇有关事件流的文章时,里面提到了数据的流处理,兴趣来了,就想看看能否在Android端实现一个。 根据文章的介绍,将每次数据的变更事件,像是插入,删除或者更新等,记为一个不可变的事件,让数据在事件中流淌,而不是对数据库进行破坏性的写入,也就是说,直接读取数据的聚合结果就能获取最...
分类:
移动开发 时间:
2015-04-21 01:36:00
阅读次数:
174
记得以前面试的时候曾被问过一个问题:数组和List的区别是什么?当时答的无非就是效率,容量固定,List不能存基本类型等等。当Java发展到了1.5之后,出现了泛型版本的List,又为这个问题的解答加入了一笔。下面就来讲一下与这个话题相关的内容。
数组的协变性(covariant)是指如果类Base是类Sub的基类,那么Base[]就是Sub[]的基类。而泛型是不可变的(invariant),List不会是List的基类,更不会是它的子类。 第二个要讲的问题是数组是具体化的(reifi...
分类:
编程语言 时间:
2015-04-19 17:59:00
阅读次数:
121
简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 Strin...
分类:
其他好文 时间:
2015-04-16 23:27:35
阅读次数:
194
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全)简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同...
分类:
其他好文 时间:
2015-04-16 19:35:10
阅读次数:
132
map是python中的映射类型,是可变对象,用于将一个值映射到另一个值。map中的值没有特殊的顺序,都是与一个key对应,key可以是数字、字符串或者元组(即不可变类型)。
需要注意当key为数字时,使用一下的原则:如果两个数字的值相等(例如1和1.0),则他们用于key时对应同样的条目(但是需要注意,由于计算机存储浮点型为一个近似值,所以使用浮点型作为key不是一个明智的选择)。
构造字典...
分类:
编程语言 时间:
2015-04-16 17:37:11
阅读次数:
142