首先,Student類的構(gòu)造方法是這樣的:public Student(String id,String name){?? ??? ?this.id=id;?? ??? ?this.name=name;?? ??? ?this.courses=new HashSet<Course>();?? ??? ??? ?}然后在測試類中,有這樣一個方法:public void testSort3(){?? ??? ?List<Student> studentList=new ArrayList();?? ??? ?studentList.add(new Student(1+"","小明"));?? ??? ?studentList.add(new Student(2+"","小紅"));?? ??? ?studentList.add(new Student(3+"","小蘭"));?? ?}為什么在這個方法中,創(chuàng)建Student對象時,參數(shù)中會多了一個+號和一個“”?
1 回答

慕圣0830664
TA貢獻(xiàn)41條經(jīng)驗(yàn) 獲得超26個贊
因?yàn)镾tudent類的構(gòu)造方法中,兩個參數(shù)都是String類型的。在創(chuàng)建對象的時候,如果直接使用new Student(1, "小明"),編譯器會報(bào)錯,1是int類型,而不是String類型,因?yàn)閰?shù)類型不匹配。而1+""就是將一個int類型轉(zhuǎn)換成一個字符串,即轉(zhuǎn)換成String類型,這樣就可以直接調(diào)用Student的構(gòu)造方法了。
添加回答
舉報(bào)
0/150
提交
取消