一、dictionary 1、字典的形式:a={‘key’:value,‘key1’:value,................} 2、字典的的key不能重复,是一个不可变对象 3、字典的的查找和添加的速度快,但是占的存储空间多 5、当查找的内容中,字典中不存在关键字时,则会发生错误有两种判定方法...
分类:
编程语言 时间:
2014-07-23 12:33:56
阅读次数:
200
不可变对象和类由不可变类创建的对象就是不可变对象,要使一个类成为不可变的,它必须满足下面的需求:所有数据域都是私有的没有修改器方法没有一个访问器的方法,它会返回一个指向可变数据域的引用看下面的代码:public class Main{ public static void main(Strin...
分类:
编程语言 时间:
2014-07-11 09:27:46
阅读次数:
288
Functional ObjectAdvantages and Disadvantages of Immutable ObjectAdv 1. 不可变对象更具容易被推断出来,因为它不会随着时间的变化而造成值的变化。Adv 2. 不可变对象可以自动地传递不会发生变化,而传递可变对象的话,需要首先对可变...
分类:
其他好文 时间:
2014-06-27 13:55:22
阅读次数:
187
C#中的lock语句是怎么回事,有什么作用?C#中的lock语句将lock中的语句块视为临界区,让多线程访问临界区代码时,必须顺序访问。他的作用是在多线程环境下,确保临界区中的对象只被一个线程操作,防止出现对象被多次改变情况。注意的地方有:lock对象必须是一个不可变对象,否则无法阻止另一个线程进入...
分类:
其他好文 时间:
2014-06-26 00:58:50
阅读次数:
354
tuple(元组)
另一种有序列表叫元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改,tuple属于不可变对象。比如同样是列出同学的名字:
>>> classmates = ('Michael', 'Bob', 'Tracy')现在,classmates这个tuple不能变了,它也没有append(),insert()这样的方法。其他获取元素的方法和list是...
分类:
编程语言 时间:
2014-06-22 16:27:27
阅读次数:
249
1. PyStringObject --> 变长不可变对象
typedef struct{
PyObject_VAR_HEAD//ob_size变量保存着对象中维护的可变长度内存的大小
longob_shash; //缓存该对象的hash值,用于dict的查询
intob_sstate; //标志该对象是否经过intern机制的处理
char ob_sval[1];// 字符指针,指向一段内存
} PyStri...
分类:
编程语言 时间:
2014-06-14 17:30:48
阅读次数:
309
Python在heap中分配的对象分成两类:可变对象和不可变对象。所谓可变对象是指,对象的内容是可变的,例如list。而不可变的对象则相反,表示其内容不可变。
不可变对象:int,string,float,tuple 可变对象 :list,dictionary 一、不可变对象 由于Python中的变...
分类:
编程语言 时间:
2014-05-13 20:07:37
阅读次数:
481
在python中所有都是对象,在python中只有list和dict是可变对象,其他都是不可变对象。具体参照:http://www.cnblogs.com/lovemo1314/archive/2012/07/18/2597111.html
分类:
编程语言 时间:
2014-05-13 18:44:31
阅读次数:
283
StringBuffer:如果在程序中需要对字符串进行频繁的修改连接操作的话.使用StringBuffer性能会更高String:是对象不是原始类型.为不可变对象,一旦被创建,就不能修改它的值.对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去.线程安全就是多线程访问..
分类:
其他好文 时间:
2014-05-13 12:54:51
阅读次数:
326