首先用到的就是Collections.unmodifiablexxx()这个函数剩下的见下面的代码。据说这个函数有bug,于是乎出了guava1importjava.util.Collection;2importjava.util.Collections;3importjava.util.Hash....
分类:
编程语言 时间:
2014-12-10 21:10:08
阅读次数:
158
一、元组特性1、类似列表,但不可变类型,正因如此,它可以做一个字典的key2、当处理一组对象时,这个组默认是元组类型3、所有的多对象,逗号分隔的,没有明确用符号定义的这些都默认为元组类型>>> 1,2,3,'Ethon'(1, 2, 3, 'Ethon')>>> x,y=1,2>>> x,y(1, ...
分类:
编程语言 时间:
2014-12-02 18:47:39
阅读次数:
115
先看一个小程序
主函数的输出并没有像想像中一样会输出3,而是输出初始化的数值0
这是因为与String类似,所有的包装类都是final类,即不可变类。虽然在代码A处看起来是改变了counter的值,但实际上是创建了另一个对象,并将方法内的counter参数的引用指向了这个新创建的对象,由于是不同的引用,所以不会对方法外的引用有任何的影响。内存图如下所示:
在刚...
分类:
其他好文 时间:
2014-11-05 09:20:28
阅读次数:
209
在面试中经常遇到这样的问题:1、什么是不可变对象。不可变对象有什么好处。在什么情景下使用它,或者更具体一点,java的String类为什么要设置成不可变类型?1、不可变对象,顾名思义就是创建后的对象不可以改变,典型的例子有java中的String类型。2、相比于可变对象,不可变对象有很多优势: (....
分类:
编程语言 时间:
2014-11-04 16:32:17
阅读次数:
400
不可变类的实例的状态不会变化,这样的实例可以安全的被其他与之关联的对象共享,还可以安全的被多个线程共享。 为了节省内存空间, 优化程序的性能, 应该尽可能的重用不可变类的实例,避免重复创建具有相同属性...
分类:
编程语言 时间:
2014-11-03 17:54:56
阅读次数:
253
数据属性储存模型更新模型访问模型数字标量/原子类型不可变类型直接存取字符串标量/原子类型不可变类型顺序列表容器可变类型顺序元组容器不可变类型顺序字典容器可变类型映射更新模型中的可不可改变,根据对象的ID。例:>>> a = 4;b = "a";c = [1,2,3];d = (1,2,3);e = ...
分类:
编程语言 时间:
2014-09-17 13:37:22
阅读次数:
182
BigInteger和Complex是.NET 4中新增的两种值类型,他们位于System.Numeric命名空间下,需要单独添加引用。
BigInteger
BigInteger类型是不可变类型,代表了一个任意大的整数,其值理论上已经没有上限和下限。此类型不用于.NET Framework其他整型...
分类:
Web程序 时间:
2014-09-15 12:45:38
阅读次数:
243
python 的数据类型和C不一样,有一种类型:可变类型 (mutable)和不可变类型(immutable)Python中所有变量都是值的引用,也就说变量通过绑定的方式指向其值。 而这里说的不可变指的是值的不可变。 对于不可变类型的变量,如果要更改变量,则会创建一个新值,把变量绑定到新值上,而旧值...
分类:
编程语言 时间:
2014-09-10 12:26:30
阅读次数:
207
文本 - 总结:什么是文本Python 中的string 类型是不可变类型。文本,一个字符的矩阵,每一个单独的文本快可以被缩进和组织起来。基本的文本操作①解析数据并将数据放入程序内部的结构中;②将数据以某种方式转化为另一种相似的形式,数据本身发生了改变;③生成全新的数据每次处理一个字符:任务用每次处...
分类:
编程语言 时间:
2014-08-19 14:30:14
阅读次数:
190
复杂数据类型有哪些?各特性是什么?各使用场景是什么?列表和元组的区别是什么?为什么会有这两种数据类型?列表和元组为什么可以存放不能类型的数据?什么是工厂函数?字符串特性:1.在Python中没有字符类型所以定义字符串可以用双引号或单引号2.字符串是不可变类型3.三引号..
分类:
编程语言 时间:
2014-08-15 02:41:48
阅读次数:
261