courseToselect.add(0,cr2)已經把他定位置定到第一個位置了,輸出為什么在第二個位置
Course cr1 = new Course("1","數據結構");
?? ?courseToselect.add(cr1);
//?? ?通過list方法取出添加的屬性
?? ?Course temp1 = (Course) courseToselect.get(0);
//?? ?對象存入集合都會變成object類型,取出時需轉換類型
?? ?System.out.println("備選課程是:"+temp1.id+ ":"+temp1.name);
?? ?
?? ?Course cr2= new Course("2","c語言");
?? ?courseToselect.add(0,cr2);
//?? ?通過list方法取出添加的屬性
?? ?Course temp2 = (Course) courseToselect.get(0);
//?? ?對象存入集合都會變成object類型,取出時需轉換類型
?? ?System.out.println("備選課程是:"+temp2.id+ ":"+temp2.name);
為什么輸出第一個不是c語言 ,這里courseToselect.add(0,cr2)已經把他定位置定到第一個位置了
2018-11-13
System.out.println("備選課程是:"+temp1.id+ ":"+temp1.name);
執行順序是從上往下的。如果添加完“C語言”后,再打印 ? ?.get(1) 就是“數據結構” 了。
2018-10-25
在輸出的時候順便把地址碼一起輸出了,最后用foreach循環輸出courseToSelect中的內容,可以看出C語言的地址碼是先輸出的,所以C語言課程確實是第一個;只不過temp(數據結構課程)的輸出語句在前面讓你覺得它是第一個
2018-10-25
代碼從上往下看,輸出結果沒問題吧。
當打印System.out.println("備選課程是:"+temp1.id+ ":"+temp1.name); 時, cr2對象根本沒有添加到。
這個問題是我理解的有問題嗎?