亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

有什么問題?


import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

import java.util.Scanner;


public class SetTest {

public List<Course> coursesToSelect;

public SetTest(){

coursesToSelect=new ArrayList<Course>();

}

public void testAdd(){

Course cr1 = new Course("1","數據結構");

coursesToSelect.add(cr1);


Course temp= (Course) coursesToSelect.get(0);

//System.out.println("添加了課程:" + temp.id + ":" + temp.name);

Course cr2= new Course("2","C語言");

coursesToSelect.add(0,cr2);

Course temp2= (Course) coursesToSelect.get(0);

//System.out.println("添加了課程:" + temp2.id + ":" + temp2.name);

//coursesToSelect.add(cr1);

//Course temp0= (Course) coursesToSelect.get(2);

//System.out.println("添加了課程:" + temp0.id + ":" + temp0.name);

Course[] course = {new Course("3","離散數學"),new Course("4","匯編語言")};

coursesToSelect.addAll(Arrays.asList(course));

Course temp3 = (Course)coursesToSelect.get(3);

Course temp4 = (Course)coursesToSelect.get(4);

//System.out.println("添加了兩門課程:" + temp3.id + ":" + temp3.name+";"+ temp4.id + ":" + temp4.name);

Course[]course2 = {new Course("5","高等數學"),new Course("6","大學英語")};

coursesToSelect.addAll(2,Arrays.asList(course2));

Course temp5 = (Course)coursesToSelect.get(2);

Course temp6 = (Course)coursesToSelect.get(3);

//System.out.println("添加了兩門課程:" + temp5.id + ":" + temp5.name+";"+ temp6.id + ":" + temp6.name);

}

private void testForEach() {

// TODO Auto-generated method stub

System.out.println("有如下課程待選(通過for each訪問):");

for(Object obj:coursesToSelect){

Course cr = (Course)obj;

System.out.println("課程:"+cr.id+":"+cr.name);

}}


public static void main(String[] args) {

// TODO Auto-generated method stub

SetTest st= new SetTest();

st.testAdd();

st.testForEach();

Student student = new Student("1","小明");

System.out.println("歡迎學生:"+ student.name +"選課!");

Scanner console = new Scanner(System.in);

for(int i=0;i<3;i++){

System.out.println("請輸入課程ID");

String courseId = console.next();

for(Course cr:st.coursesToSelect){

if(cr.id.equals(courseId)){

student.courses.add(cr);

}

}

}

st.testForEachForSet(student);

}

public void testForEachForSet(Student student){

for(Course cr:student.courses){

System.out.println("選擇了課程:"+cr.id+":"+cr.name);

}

}

}


正在回答

1 回答

Course temp3 = (Course)coursesToSelect.get(3);//你的代碼中獲取到的是地址為3的信息,是("4","匯編語言")

Course temp4 = (Course)coursesToSelect.get(4);//地址是4的信息,地址4現在還木有信息啊,這里應該是3,上面應該是2

因為地址從0開始放,開始地址0是數據結構,結果又把c語言放在0位置,那么數據結構就在1位置,你又放了兩個(離散數學、匯編語言),地址在2,3的位置上,然后又放2門課(高等數學、大學英語)在2的位置,那么地址位置又變了,現在0放c語言,1放數據結構,2放高等數學,3放大學英語,4放離散數學,5放匯編語言。


1 回復 有任何疑惑可以回復我~
#1

liu4444 提問者

非常感謝!
2016-01-09 回復 有任何疑惑可以回復我~
#2

Lee_emoji 回復 liu4444 提問者

不用客氣!我剛看過你以前提的問題,其實你不必每次都貼出來的,遇到問題自己先研究一下,因為有一些是細心題,還有一些通過debug調試就可以知道錯誤的地方。作為程序員debug很重要的,詳細的步驟你可以找度娘
2016-01-11 回復 有任何疑惑可以回復我~
#3

liu4444 提問者 回復 Lee_emoji

太感謝謝
2016-01-16 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第三季
  • 參與學習       409767    人
  • 解答問題       4543    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

有什么問題?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號