摘要: 解析Java对象的equals()和hashCode()的使用 解析Java对象的equals()和hashCode()的使用前言在Java语言中,equals()和hashCode()两个函数的使用是紧密配合的,你要是自己设计其中一个,就要设计另外一个。在多数情况下,这两个函数是不用考虑的,直接使用它们的默认设计就可以了。但是在一些情况下,这两个函数最好是自己设计,才能确保整个程序的正常运行。最常见的是当一个对象被加入收集对象(collection object)时,这两个函数必须自己设计。更细化的定义是:如果你想将一个对象A放入另一个收集对象B里,或者使用这个对象A为查找一个元对象在收集对 阅读全文
posted @ 2012-07-23 10:58 qingyezhu 阅读(220) 评论(0) 推荐(0)
摘要: /** * 和为n的连续正数列 * 定义序列start=1,end=2,当和sum大于n时,则先将和sum减去最小的start,并移动start++,若是小于n,则sum+=end * ,end++,若是等于则输出[start,end],并使sum加上end,++end * * @param n */ public static void sequenceN(int n) { int start = 1, end = 2, mid = (n + 1) / 2, sum = start + end; while (start < mid) { if (sum > n) { ... 阅读全文
posted @ 2012-07-23 10:45 qingyezhu 阅读(223) 评论(0) 推荐(0)