Java基礎知識:如何取出Map中key和value的值
你是否已經對每次從Map中取得關鍵字然后再取得相應的值感覺厭倦?使用Map.Entry類,你可以得到在同一時間得到所有的信息。
標準的Map訪問方法如下:
Set keys = map.keySet( );
if(keys != null) {
Iterator iterator = keys.iterator( );
while(iterator.hasNext( )) {
Object key = iterator.next( );
Object value = map.get(key);
;…
;}
}
然后,這個方法有一個問題。從Map中取得關鍵字之后,我們必須每次重復返回到Map中取得相對的值,這是很繁瑣和費時的。
幸運的是,這里有一個更加簡單的途徑。Map類提供了一個稱為entrySet()的方法,這個方法返回一個Map.Entry實例化后的對象集。 接著,Map.Entry類提供了一個getKey()方法和一個getValue()方法,因此,上面的代碼可以被組織得更符合邏輯。舉例如下:
Set entries = map.entrySet( );
if(entries != null) {
Iterator iterator = entries.iterator( );
while(iterator.hasNext( )) {
Map.Entry entry =iterator.next( );
Object key = entry.getKey( );
Object value = entry.getValue();
;…
}
}
盡管增加了一行代碼,我們卻省略了許多對Map不必要的"get"調用。同時,提供給開發人員一個同時保持了關鍵字和其對應的值的類。Map.Entry同時也提供了一個setValue()方法,程序員可以使用它修改map里面的值。
Hashtable內部排列的方式是散列排布,所以當輸出信息時會是無序的。為了能保證輸出的數據按照順序排列,不要渴望用java自帶的函數來對 Hashtable對象進行調整處理。當我們獲取Hashtable里的KEY和VALUE時,一般都運行了Map.Entry類來轉換,好,現在就用這 個類來作文章,我具體寫了一個方法。
代碼:
/**
* 方法名稱:getSortedHashtable
* 參數:Hashtable h 引入被處理的散列表
* 描述:將引入的hashtable.entrySet進行排序,并返回
*/
public static Map.Entry[] getSortedHashtable(Hashtable h){
Set set = h.entrySet();
Map.Entry[] entries = (Map.Entry[])set.toArray(new Map.Entry[set.size()]);
Arrays.sort(entries,new Comparator(){
public int compare(Object arg0, Object arg1) {
Object key1 = ((Map.Entry)arg0)。getKey();
Object key2 = ((Map.Entry)arg1)。getKey();
return ((Comparable)key1)。compareTo(key2);
}
});
return entries;
}
調用這個方法:
Map.Entry[] set = getSortedHashtable(t);
//perportyTable
for (int i=0;i
時間:2013-06-22 責任編輯:admin
相關文章
無相關信息
主站蜘蛛池模板:
电车男|
红剪花|
2025最火情侣头像|
视频三级|
免费观看美国破釜沉舟电影|
孕期体重增长参照表|
catastrophe翻译|
卧龙生|
美女mm|
爆操女人逼|
描写动物的成语|
男男性猛交xxxx免费看|
摇曳庄的幽奈小姐|
墨雨云间电视剧免费播放|
工程力学电子版教材|
色戒在线观看视频|
电影《来的都是客》|
热天午后|
朱时茂电影|
同妻俱乐部|
《禁忌2》在线观看|
马会传真论坛13297соm查询官网|
日本电影芋虫|
24点数学题目100道|
三年片观看免费完整版中文版|
侦探们的镇魂歌国语版在线观看|
龚婉怡|
莴笋是发物吗|
唐朝艳妃电影|
怒放的生命简谱|
打开免费观看视频在线观看高清|
有档期是有空还是没空|
浙江卫视今天全部节目表|
加入民盟的好处和坏处|
同城招聘网找工作|
罗丽星克莱尔av片在线|
新世纪大学英语综合教程3|
av电影网|
香港之夜在线观看完整版|
绝对权力全集免费观看|
让我们一起摇太阳|