摘要: 建议27:谨慎包装类型的大小比较 基本数据类型比较大小木有问题,不过其对应的包装类型大小比较就需要注意了。看如下代码: 运行结果: 为什么(a==b)返回值会是false呢? 通过对比字符串比较来理解,基本类型100通过包装类Integer包装后生产一个Integer对象的引用a,而“==”使用来判 阅读全文
posted @ 2016-04-22 21:05 SummerChill 阅读(3648) 评论(0) 推荐(1)
摘要: 建议35: 避免在构造函数中初始化其他类 构造函数是一个类初始化必须执行的代码,它决定着类的初始化效率,如果构造函数比较复杂,而且还关联了其他类,则可能产生意想不到的问题,我们来看如下代码: 这段代码并不复杂,只是在构造函数中初始化了其他类,想想看这段代码的运行结果是什么?是打印“Hi,show m 阅读全文
posted @ 2016-04-22 20:55 SummerChill 阅读(1249) 评论(0) 推荐(1)
摘要: 建议37: 构造代码块会想你所想 镜像博文:http://www.cnblogs.com/DreamDrive/p/5413408.html http://www.cnblogs.com/DreamDrive/p/5422698.html 上一个建议中我们提议使用构造代码块来简化代码,并且也了解到编 阅读全文
posted @ 2016-04-22 20:45 SummerChill 阅读(435) 评论(0) 推荐(2)
摘要: 建议36: 使用构造代码块精炼程序 什么叫代码块(Code Block)?用大括号把多行代码封装在一起,形成一个独立的数据体,实现特定算法的代码集合即为代码块,一般来说代码块是不能单独运行的,必须要有运行主体。在Java中一共有四种类型的代码块: (1)普通代码块 就是在方法后面使用“{}”括起来的 阅读全文
posted @ 2016-04-22 20:43 SummerChill 阅读(506) 评论(0) 推荐(0)
摘要: Java中的数组是定长的,一旦经过初始化声明就不可改变长度,这在实际使用的时候非常不方便.比如要对一个班级的学生信息进行统计,因为我们不知道班级会有多少个学生(随时可能有退学,入学,转学),所以需要一个足够大的数组来容纳所有的学生.可以通过对数组扩容解决该问题. 代码如下: 上述代码中采用的是Arr 阅读全文
posted @ 2016-04-22 18:24 SummerChill 阅读(1360) 评论(0) 推荐(0)
摘要: 建议62:警惕数组的浅拷贝 一、分析 在日常工作中,我们会遇见很多数组的拷贝和复制的问题,但是在你使用系统提供的API进行编码的时候,无形中会留下浅拷贝的隐患。 一、分析 在日常工作中,我们会遇见很多数组的拷贝和复制的问题,但是在你使用系统提供的API进行编码的时候,无形中会留下浅拷贝的隐患。 在日 阅读全文
posted @ 2016-04-22 17:40 SummerChill 阅读(751) 评论(0) 推荐(0)
摘要: 我们经常使用ArrayList,Vector,Hashmap等集合,一般都是直接用new跟上类名声明出一个集合来,然后使用add,remove,等方法进行操作,而且因为它们是自动管理长度的,所以不用我们特别费心超长问题,这确实是一个非常好的优点,但也有我们需要注意的事项. 下面以ArrayList为 阅读全文
posted @ 2016-04-22 17:32 SummerChill 阅读(1697) 评论(0) 推荐(0)
摘要: 建议89:枚举项的数量限制在64个以内 为了更好的使用枚举,java 提供了两个枚举集合:EnumSet和EnumMap,这两个集合的使用都比较简单,EnumSet表示其元素必须是某一枚举的枚举项,EnumMap表示Key值必须是某一枚举的枚举项,由于枚举类的实例数量固定并且有限,相对来说EnumS 阅读全文
posted @ 2016-04-22 17:15 SummerChill 阅读(411) 评论(0) 推荐(0)
摘要: 建议64:多种最值算法,适时选择. 对一批数据进行排序,然后找出其中的最大值或最小值,这是基本的数据结构知识。在Java中我们可以通过编写算法的方式,也可以通过数组先排序再取值的方式来实现。下面以求最大值为例,解释一下多种算法。 (1) 自行实现,快速査找最大值 先来看用快速査找法取最大值的算法,其 阅读全文
posted @ 2016-04-22 16:14 SummerChill 阅读(1039) 评论(0) 推荐(0)
摘要: 枚举和注解都是在Java1.5中引入的,虽然他们是后起之秀,但是功能不容小觑,枚举改变了常量的声明方式,注解耦合了数据和代码. 建议83:推荐使用枚举定义常量 一、分析 一、分析 常量的声明是每一个项目中不可或缺的,在Java1.5之前,我们只有两种方式的声明:类常量和接口常量。不过,在1.5版之后 阅读全文
posted @ 2016-04-22 00:30 SummerChill 阅读(4141) 评论(0) 推荐(0)