最新回答 / qq_琉璃苣_1
他的意思应该是在[0, 2^32-1]范围内经过HashMap.hash()之后还是得到自己,就是说在这个范围内默认是按哈希表里的顺序也就是从小到大排列 在讲解中不是说先加2的16次方然后再减去2的16次方 也就是只要跳出那个范围就是正常无序的了 (我的一点见解,不保证一定喔)
2016-03-23
已采纳回答 / Jccch
因为你要比较的是student类的对象,这个对象就只能调用student的equals方法(这方法如果不重写,就是默认调用student的父类的equals方法(也就是object类))。你若是重写了其他类的equals的方法,是不会影响到student类的。
已采纳回答 / liu4510
个人理解,仅供参考:arraylist的大小应该是根据arraylist中元素多少来确定的,而你插入这条语句(coursesToSelect.add(4,cr3);)时,加上这条语句的元素一共才4个元素,所有它的下标最多是3.
2016-03-23
最赞回答 / Mardanof2
因为最前面用private static修饰了console,所以console是静态变量,如果不重新初始化,抛出异常后,第二次进行方法inputCommand()时,console还是会保存以前有问题的数据,会进入死循环
2016-03-21
最赞回答 / Java_Hello_World
谢谢楼上两位的回复,我好像搞清楚了问题的所在。对于引用数据类型,equals()方法比较的是对象的地址;而对于基本数据类型,equals()比较的就是数值。我的例子中,s1, s2...都是字符串常量,是基本数据类型。
2016-03-20