第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

為什么我執(zhí)行中會拋出NullPointerException,求大神指點(diǎn)

public?void?creatStudentAndSelectCourse(){
		//創(chuàng)建一個學(xué)生對象
		Student?stu1?=?new?Student("1","小明");
		System.out.println("歡迎:"+stu1.name+"選課!");
		Scanner?input?=?new?Scanner(System.in);??
		for(int?i?=?0?;?i<3?;?i++){
			System.out.println("請輸入課程ID");
			String?courseID?=?input.next();
			for(Course?c?:?coursesToSelect){
				if(c.id.equals(courseID)){
					stu1.courses.add(c);?
					/**
					?*?Set中,添加某種對象,無論添加多少次
					?*?最終只會保留一個該對象(的引用)
					?*?并且,保留的是第一次添加的那一個
					?*/
				}
			}
		}	
		System.out.println("共選擇了:"+stu1.courses.size()+"門課程");
		//打印輸出學(xué)生所選的課程
		for(Course?c?:?stu1.courses){
			System.out.println("選擇了課程"+c.id+":"+c.name);
			}
	}
	/*
	?*?*/
	public?void?testSetContains(){
		//t提示輸入課程名稱
		System.out.println("請輸入學(xué)生已選的課程名稱");
		String?name?=?console.next();
		//創(chuàng)建一個課程對象,ID和名稱,并判斷備選課程中是否包含課程
		Course?course2?=?new?Course();
		course2.name=?name;
		System.out.println("取得課程:"+course2.name);
		System.out.println("備選課程中是否包含此課程"+student.courses.contains(course2));
		
	}
	
	public?static?void?main(String[]?args)?{
		SetTest?st?=?new?SetTest();
		st.testAdd();
		
		st.testForEach();
//		st.testListContains();
//		st.testForEach();
		
		st.creatStudentAndSelectCourse();
		st.testSetContains();

		}



執(zhí)行結(jié)果

有如下課程待選(通過For each來遍歷):

課程:2:C語言

課程:1:數(shù)據(jù)結(jié)構(gòu)

課程:5:高等數(shù)學(xué)?

課程:6:大學(xué)英語

課程:3:離散數(shù)學(xué)?

課程:4:匯編語言

歡迎:小明選課!

請輸入課程ID

2

請輸入課程ID

5

請輸入課程ID

6

共選擇了:3門課程

選擇了課程5:高等數(shù)學(xué)?

選擇了課程6:大學(xué)英語

選擇了課程2:C語言

請輸入學(xué)生已選的課程名稱

高等數(shù)學(xué)

取得課程:高等數(shù)學(xué)

Exception in thread "main" java.lang.NullPointerException

at com.collection_map_demon.SetTest.testSetContains(SetTest.java:90)

at com.collection_map_demon.SetTest.main(SetTest.java:103)


正在回答

3 回答

第三行的第一個單詞去掉,就沒問題

1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

qq_木_31

和之后前來學(xué)習(xí)的人分享一下自己的理解,第三行Student student 重新定義了一個與成員變量同名的局部變量,所以在這個方法里使用的是局部變量,所作的添加賦值操作給了它,而類里面的student并沒有接受到添加(為空),所以再調(diào)用student.courses.contains()時student.courses為空,所以出現(xiàn)異常。
2018-08-01 回復(fù) 有任何疑惑可以回復(fù)我~

? public void testSetContains(Student student)

0 回復(fù) 有任何疑惑可以回復(fù)我~

已自己找到問題。第一個方法里還用的是stu1,沒有傳信息去類屬性student里。

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

悟能子

我也遇到了這樣的問題,請問具體是怎么改的?
2018-05-17 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

為什么我執(zhí)行中會拋出NullPointerException,求大神指點(diǎn)

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號