這兩個遍歷方法中后者循環(huán)中的c變量是不是每次循環(huán)都被定義一次,為什么不報錯?
public void getcourse(){
?? ??? ?int size = coursesToSelect.size();
?? ??? ?Course c;
?? ??? ?System.out.println("有如下課程:");
?? ??? ?for(int i=0;i<size;i++){
?? ??? ??? ?c = (Course) coursesToSelect.get(i);
?? ??? ??? ?System.out.println(c.id+":"+c.name);
?? ??? ?}
?? ?}
------------------------------------------------------
public void getcourse(){
?? ??? ?int size = coursesToSelect.size();
?? ??? ?System.out.println("有如下課程:");
?? ??? ?for(int i=0;i<size;i++){
?? ??? ??? ?Course c = (Course) coursesToSelect.get(i);
?? ??? ??? ?System.out.println(c.id+":"+c.name);
?? ??? ?}
?? ?}
2017-08-21
第一個遍歷的方法c在循環(huán)里一直被重新賦值,變量內(nèi)存地址一直不變,第二個遍歷方法中c一直被重新定義,不報錯的原因是因為c是局部變量,每次執(zhí)行完語句便會釋放掉內(nèi)存
2017-06-26
并不是每次都定義一次,第一次很明顯定義一次,只是賦值不同;第二次寫在循環(huán)里,但只定義c一次
2017-04-14
每次都重新定義一個c,這沒毛病啊,為什么要報錯呢?