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

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

輸出順序始終是根據(jù)id大小來排序的

package?com.demo.zhq;

import?java.util.HashMap;
import?java.util.Map;
import?java.util.Map.Entry;
import?java.util.Scanner;
import?java.util.Set;
public?class?MapTest?{
	/**
	?*?用來承裝學生的類型對象
	?*?@param?args
	?*/
	public?Map<String,?Student>students;
	private?Scanner?console;
	private?Scanner?b;
	private?Scanner?a;
	
	/**
	?*?構(gòu)造器中初始化students屬性
	?*/
	public?MapTest(){
		this.students?=?new?HashMap<String,Student>();
		
	}
	/**
	?*?測試添加:輸入學生ID,判斷是否被占用
	?*?若未被占用,則輸入姓名,創(chuàng)建學生對象,并且添加到students中
	?*?
	?*?@param?args
	?*/
	public?void?testPut(){
		console?=?new?Scanner(System.in);
		int?i?=?0;
		while(i?<?3){
			System.out.println("請輸入學生ID:");
			String?ID?=?console.next();
			//判斷該ID是否被占用
			Student?st?=?students.get(ID);
			if?(st?==?null)?{
				//提示輸入學生姓名
				System.out.println("請輸入學生姓名:");
				String?name?=?console.next();
				//創(chuàng)建一個新的對象
				Student?newStudent?=?new?Student(ID,?name);
				//通過調(diào)用stdents的put方法,添加?ID-學生映射
				students.put(ID,?newStudent);
				System.out.println("成功添加學生:"+students.get(ID).name);
				i++;
			}else?{
				System.out.println("該學生ID已被占用!");
				continue;?
			}
		}
	}
	/**
	?*?測試Map的keySet方法
	?*?@param?args
	?*/
	public?void?testKeySet(){
		//通過keySet的方法,返回Map中的所有"鍵"的Set集合
		Set<String>?keySet?=?students.keySet();
//		//取得students的容量
//		System.out.println("總共有:"+students.size()+"個學生!");
		//遍歷keySet,取得每一個鍵,在調(diào)用get方法取得每個鍵對應(yīng)的value
		for(String?stuId?:?keySet){
			Student?st?=?students.get(stuId);
			if?(st?!=?null)?{
				System.out.println("學生:"+st.name);
			}
		}
	}
	/**
	?*?測試Map的刪除映射
	?*?@param?args
	?*/
	public?void?testRemove()?{
		b?=?new?Scanner(System.in);
		?while?(true)?{
			?//提示輸入刪除學生的ID
			?System.out.println("請輸入要刪除的學生ID:");
			?String?ID?=?b.next();
			?//判斷該ID是否有對應(yīng)的學生對象
			?Student?st?=?students.get(ID);
			?if?(st?==?null)?{
					//提示輸入的ID并不存在
					?System.out.println("該ID并不存在!");
					?continue;
				?}
			?students.remove(ID);
			?System.out.println("成功刪除學生:"+st.name);
			?break;
		}
	}	
	/**
	?*?通過entrySet方法來遍歷Map
	?*?
	?*?@param?args
	?*/
	public?void?testEntrySet(){
		//通過entrySet方法,返回Map中的所有鍵值對
		Set<Entry<String,Student>>?entrySet?=?students.entrySet();
		System.out.println("刪除后還剩"+entrySet.size()+"名學生,分別是:");
		for?(Entry<String,?Student>?entry?:?entrySet)?{
			System.out.print("鍵值:"+entry.getKey()+",");
			System.out.println("姓名:"+entry.getValue().name);
		}
	}
	/**
	?*?利用put方法修改Map中的已有映射
	?*?@param?args
	?*/
	public?void?testModify(){
		//提示輸入要修改的學生ID
		System.out.println("請輸入要修改的學生ID:");
		a?=?new?Scanner(System.in);
		while?(true)?{
			//取得從鍵盤輸入的學生ID
			String?stuID?=?a.next();
			//從students中查找該學生ID對應(yīng)的學生對象
			Student?student?=?students.get(stuID);
		}
	}
	public?static?void?main(String[]?args)?{
		//?TODO?Auto-generated?method?stub
		MapTest?mt?=?new?MapTest();
		mt.testPut();
		mt.testKeySet();
		mt.testRemove();
		mt.testEntrySet();
	}

}

為什么我的輸出順序是根據(jù)輸入的id來的啊,每次都是一樣的1,2,3的順序,N次了

正在回答

2 回答

只是湊巧,上面這個老哥已經(jīng)說很清楚了

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

湊巧而已,多試幾次再看看,

HashMap是無序的,TreeMap是有序的

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

慕工程7468250 提問者

我這里就是HashMap啊,不是TreeMap
2017-07-21 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

輸出順序始終是根據(jù)id大小來排序的

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

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

幫助反饋 APP下載

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

公眾號

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