04 2013 档案
摘要:概念序列化就是将一个对象的状态(各个属性量)保存起来,然后在适当的时候再获得。序列化分为两大部分:序列化和反序列化。序列化是这个过程的第一部分,将数据分解成字节流,以便存储在文件中或在网络上传输。反序列化就是打开字节流并重构对象。特点如果某个类能够被序列化,其子类也可以被序列化。声明为static和transient类型的成员数据不能被序列化。因为static代表类的状态, transient代表对象的临时数据。相关的类和接口在java.io包中提供的涉及对象的串行化的类与接口有: ObjectOutput接口、ObjectOutputStream类、ObjectInput接口、ObjectI
阅读全文
摘要:异或是一种基于二进制的位运算,用符号XOR或者 ^ 表示,其运算法则是对运算符两侧数的每一个二进制位,同值取0,异值取1。它与布尔运算的区别在于,当运算符两侧均为1时,布尔运算的结果为1,异或运算的结果为0。一、异或的性质交换律:a ^ b = b ^ a结合律:a ^ b ^ c = a ^ (b ^ c) = (a ^ b) ^ cd = a ^ b ^ c 可以推出 a = d ^ b ^ c自反性:a ^ b ^ a = b二、异或的应用交换两个数最常见的做法就是增加一个临时变量,代码如下: public void switchValue(int a, int b) { ...
阅读全文
摘要:java的文件操作基本可以分为两个类型:基于字节操作,如:InputStream 和 OutputStream基于字符操作,如:Writer 和 Reader一、基于字节先来看看InputStream的类层次结构:用的比较多的是FileInutStream。再来看看OutputStream的结构:二、基于字符还是先看看类层次结构图,先看Reader:然后是Writer:三、代码示例先额外贴一段关于控制台输入的: 1 //从控制台接收用户输入 Scanner 2 public String getInputByScanner() { 3 Scanner sc ...
阅读全文
摘要:LinkedHashMap的构造方法有一个是这样子的:1 public LinkedHashMap(int initialCapacity,2 float loadFactor,3 boolean accessOrder) {4 super(initialCapacity, loadFactor);5 this.accessOrder = accessOrder;6 }参数说明:initialCapacity 初始容量大小,使用无参构造方法时,此值默认是16loadFactor ...
阅读全文