java中如何把hashmap转换成object数组

kevintian511  |  浏览 9730 次   2007-12-10 16:37
2015-06-22 22:50 最佳答案
hashmap是以键值对(key-value)的格式保存对象的容器,
数组是按顺序一个一个保存对象的容器
你把hashmap转换成数组是想把key转成数组呢还是把value转成数组呢或者key和value组合成的对象转换成数组呢.我把key和value的分别写出来,组合对象的同理建新对象保存即可
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("a", "tom");
		map.put("b", "jerry");
		Object[] keys =  map.keySet().toArray();
		Object[] values =  map.values().toArray();
		System.out.println("key数组:"+Arrays.toString(keys));
		System.out.println("value数组:"+Arrays.toString(values));

nuimeng1st 

采纳率:61% 擅长: 办公软件

其他回答

import java.util.HashMap;
import java.util.Map;

public class MapToObject {

public static void main(String[] args){
Map<Integer,String> m = new HashMap<Integer,String>();
m.put(1,"one");
m.put(2,"two");
m.put(3,"three");
Object o[] =m.values().toArray();
for(int i=0;i<o.length;i++){
System.out.println(o[i]);
}
}

}

//就是在map中依次存在的顺序吧
如果你要保证有序,那使用TreeMap
 本回答被提问者采纳
color4you    |  2007-12-12 14:39
评论(1) 
4  0
蒲烧unagi | 2014-8-6 17:48
补充一下,如果要特定类型的数组,可以这样:Long[] array = map.values().toArray(new Long[n]); 回复
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐