文章分类 -  Java

摘要:============================================================ 改写equals时总是要改写hashCode============================================================java.lnag.Object中对hashCode的约定: 1. 在一个应用程序执行期间,如果一个对象的equals方法做比较所用到的信息没有被修改的话,则对该对象调用hashCode方法多次,它必须始终如一地返回同一个整数。 2. 如果两个对象根据equals(Object o)方法是相等的,则调用这两个对象 阅读全文
posted @ 2011-08-20 14:38 #Doing 阅读(8919) 评论(1) 推荐(3)
摘要:从对象实现上来说,String和StringBuffer都是通过char[]来实现的。 如果new String(),那么数组的长度为0,如果new String("String"),那么char[]数组的长度就是你创建的字符串的长度。这个char[]在字符串创建以后是不会改变的。 如果你只对这个串本身进行查找等对字符串无改变的操作的话,对于此数组本身是没有影响的。但是如果,你要执行的是一个对此字符串本身有改变的操作的话,那么,是不可以的。但是Strin对象为我们提供了此类操作的方法,比如concat()方法,源代码如下:public String concat(Strin 阅读全文
posted @ 2011-08-20 14:28 #Doing 阅读(323) 评论(0) 推荐(0)