最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

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

大佬求解,為啥我的代碼輸入三次跳出循環(huán),但是老師的輸入了四次,而且我覺得三次是對的呀?

package?imoocCollection;

import?java.util.HashMap;
import?java.util.Map;
import?java.util.Scanner;
import?java.util.Set;

public?class?MapTest?{
	
	//建一個map類型的屬性,用來承裝student對象的
	public?Map<String,?Student>?students;
	
	//在構(gòu)造方法上給students初始化
	public?MapTest()?{
		this.students?=?new?HashMap<String,?Student>();
	}
	
	//測試添加方法:輸入學(xué)生的ID,判斷是否被占用
	//若未被占用,提示輸入學(xué)生姓名,創(chuàng)建新的學(xué)生對象,并且添加到students中
	//若被占用,打印輸出,該ID已被占用
	public?void?testPut()?{
		//創(chuàng)建一個Scanner對象
		Scanner?sc?=?new?Scanner(System.in);
		for(int?i=0;?i<3;?i++)?{
			?System.out.println("請輸入學(xué)生ID:");
			?String?id?=?sc.next();
			?//判斷該ID是否被占用
			?Student?s?=?students.get(id);
			?if(s?==?null)?{
				?//提示輸入學(xué)生姓名
				?System.out.println("請輸入學(xué)生姓名:");
				?String?name?=?sc.next();
				?//創(chuàng)建新的學(xué)生對象
				?Student?st?=?new?Student(id,?name);
				?//通過調(diào)用students的put方法添加學(xué)生到hash?map里
				?students.put(id,?st);
				?System.out.println("成功添加學(xué)生:"?+?students.get(id).name);
			?}
			?else?{
				?System.out.println("該學(xué)生ID已被占用");
				?continue;
			?}
		}
	}
	
	//測試map的keySet()方法
	public?void?testKeySet()?{
		//通過keySet方法返回Map中所有鍵的Set集合
		Set<String>?keySet?=?students.keySet();
		//取得set的容量
		System.out.println("總共有:"?+?keySet.size()?+?"個學(xué)生!");
		
		//遍歷keySet,取得每一個鍵,在調(diào)用map的get方法取得每個鍵對應(yīng)的value
		for(String?s?:?keySet)?{
			Student?st?=?students.get(s);
			if(st?!=?null)?{
				System.out.println("學(xué)生:"?+?st.name);
			}
		}
		
	}
	

	public?static?void?main(String[]?args)?{
		//?TODO?Auto-generated?method?stub
		MapTest?mt?=?new?MapTest();
		mt.testPut();
		mt.testKeySet();
	}

}


正在回答

3 回答

就是三次,i=0、1、2

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

qq_OK_21 提問者

但是我看老師運行的代碼,結(jié)果是:(雖然我用的是for循環(huán),老師用的是while,但我覺得是一樣的,大佬求解) 請輸入學(xué)生ID: 1 請輸入學(xué)生姓名: Tom 成功添加學(xué)生:Tom 請輸入學(xué)生ID: 1 該學(xué)生ID已被占用! 請輸入學(xué)生ID: 2 請輸入學(xué)生姓名: Jack 成功添加學(xué)生:Jack 請輸入學(xué)生ID: 3 請輸入學(xué)生姓名: ?xiao ming 成功添加學(xué)生:xiao ming
2018-01-10 回復(fù) 有任何疑惑可以回復(fù)我~
#2

qq_OK_21 提問者

非常感謝!
2018-01-10 回復(fù) 有任何疑惑可以回復(fù)我~

老師的i++可以控制在if后面,跟后面else無關(guān)呀,打個比方從第二次開始輸,若一直重復(fù)可以輸無數(shù)次,你這樣寫,如果輸入重復(fù)的也算了

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

for循環(huán)是可以用,但你這樣寫,只能輸入三次,無論id是否重復(fù)。

如果你把i++放入if里面,只要id重復(fù),就能輸入多次,直到你正確輸入三個不重復(fù)的id為止。

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

舉報

0/150
提交
取消

大佬求解,為啥我的代碼輸入三次跳出循環(huán),但是老師的輸入了四次,而且我覺得三次是對的呀?

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

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

幫助反饋 APP下載

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

公眾號

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