已采纳回答 / tossgoon
问题出在了第8行,构造函数是没有返回值的,所以第8行应该为public TestGeneric()。你写的构造函数前面加上了void,该构造函数不能执行,也就是是coursew这个List对象没有初始化,所以出异常咯。
2016-03-15
已采纳回答 / 大简
第三行声明了courses是Set接口泛型为Course的引用this.courses = new HashSet<Course>();this表示当前类,this.courses即当前类的courses属性 new HashSet<Course>() 实例化一个HashSet类型的对象,HashSet是Set接口的一个实现类大概就是这样
2016-03-15
已采纳回答 / blackzky
你那个foreach位置不对,应该放在输出后面,放在前面相当于for循环一样,按数组位置循环检查当前输入与该位置课程序号或名字是否匹配。还有我实在不知道怎样让未找到对应课程时报错,所以参照第一章课程演示代码定义了两个方法,即没找到课程就没有返回值就报错。import java.util.*;public class Test { private static Scanner console = new Scanner(System.in); private static Scanner inp...
2016-03-12
已采纳回答 / 下一站幸福1
重写equals了还要重写hashcode()
已采纳回答 / 学习ing方法
charAt(i).equals('a');charAt(i).toString.equal("a");还有你代码那有2个if语句 而且第二个if语句没有判断条件 你仔细看下 用==可以判断的
2016-03-10
已采纳回答 / 慕桂英9175992
字符串可以说在被创建后便是一个常量,内容不可更改。更改的话相当于变相创建了一个新的字符串。s1创建了一个字符串为imooc,将这个常量保存在了内存里。创建s2时,由于s2创建的内容和s1一样,所以s2并没有在内存中创建一个新的字符串,而是指向s1所创字符串的内存地址,所以s1和s2指向的是同一个常量,s1=s2。s3是在s1的基础上创建了一个新的字符串I love imooc,创建时开辟了新的内存地址s4同理,也是在s1上创建了新的字符串。字符串之间的比较,是比较内存首地址是否相同,而不是内容。所以s1和...
2016-03-07
已采纳回答 / 丑蛋
如果,代码是连续的几行 如:int a ;int b;可以选中这两行,按住Ctrl+/,可以注释或者Ctri+Shift+/如果是跳跃的几行,只能一行一行注释
2016-03-04
已采纳回答 / 0214YIwangZHE
for(Object obj:coursesToSelect){} 相当于for(int i = 0; i < coursesToSelect.length(); i++){}为什么会这样呢,首先coursesToSelect是一个关于Course的List集合的对象,而obj相当于这个对象中的一个,意思就是把coursesToSelect 中的每一个都遍历一遍。之所以这里使用了Object,是因为:Object类(1)在Java中,任何一个类都扩展来自Object类。(2)当没有为某一个类定义...
2016-03-03