如何将Map集合转换成二维数组?

bai666666 2007-09-03 10:37:38
以下两个问题只要答对一个即给分!~_~

Map map=new HashMap();
while (rs.next())
{
map.put(rs.getObject(1), rs.getObject(2));
}
问题一:此时怎么把map对象集合中的元素转换成二维数组?
  问题二:如果我这样操作:
     Set set=map.entrySet();
那么怎么把这个set集合转换成二维数组?
 

...全文
2086 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
bai666666 2007-09-03
  • 打赏
  • 举报
回复
我是想知道大家有没有比较好的方法:比如用java中相关类的方法来进行快速转换,做到简单快捷,最好不要用循环遍历的方法.
bai666666 2007-09-03
  • 打赏
  • 举报
回复
这个二维数组从第0行到最后一行每一行的数据结构如下所示:
第0列¦第1列
第0行----> key--¦--value ------>第0次放入map中的(key,value);
第1行----> key--¦--value ------>第1次放入map中的(key,value);
第2行----> key--¦--value ------>第2次放入map中的(key,value);
第3行----> key--¦--value ------>第3次放入map中的(key,value);
...................¦.........................................
第n行----> key--¦--value ------>第n次放入map中的(key,value);
bit1010 2007-09-03
  • 打赏
  • 举报
回复
感觉,楼主的二维树组是个n行2列的数据结构。

问题2:

Set set=map.entrySet();

此时set的每个元素是一个Map.Entry类型,该类型中存放着key和value,可以设置到你的二维树组中。

问题1:

问题一:此时怎么把map对象集合中的元素转换成二维数组?

可以参考问题2的做法实现。



  • 打赏
  • 举报
回复
还是没看懂,是不是 [0][0] 放 key,那 value 放哪呢?
wunan320 2007-09-03
  • 打赏
  • 举报
回复
好象如楼上所说的。。
不知道这个结构有什么用处
  • 打赏
  • 举报
回复
也就是说这个二维数组,只用到了一小部分,就是两个下标相同的部分,[0][0],[1][1] ... 这样的结构,而 [0][1], [1][0] 这样的根本就没有用到!是这样吗?好浪费~~
shan1119 2007-09-03
  • 打赏
  • 举报
回复
Set set=map.entrySet();
这个怎么弄成二维数组啊?只有一维数据.
bai666666 2007-09-03
  • 打赏
  • 举报
回复

这个二维数组从第0行到最后一行每一行的数据结构如下所示:
第一列| 第二列
第0行----> key--|--value ------>第0次放入map中的(key,value);
第1行----> key--|--value ------>第1次放入map中的(key,value);
第2行----> key--|--value ------>第2次放入map中的(key,value);
第3行----> key--|--value ------>第3次放入map中的(key,value);
.................|....... ...................................
第n行----> key--|--value ------>第n次放入map中的(key,value);

shan1119 2007-09-03
  • 打赏
  • 举报
回复
Object obj[][] = new Object[2][map.keySet().size()];

Set set = map.keySet();
obj[0]=(Object[])set.toArray().clone();
for(int i=0;i<obj[0].length;i++)
obj[1][i] = map.get(obj[0][i]);
  • 打赏
  • 举报
回复
二维数组的存储结构怎样,能否举个例子?
  • 打赏
  • 举报
回复
你这个题目连手工都不知道怎么实现,Set 可以转成数组,但是是一维的,Map 只能通过 map.entrySet 转成 Set 再转数组,但是你要的是二维数组,这个根本看不过你弄的那些图示是什么意思,不知道怎么样的结构。

只有知道了存储结构才能帮你啊。你的

第0行----> key--¦--value ------>第0次放入map中的(key,value);
第1行----> key--¦--value ------>第1次放入map中的(key,value);
第2行----> key--¦--value ------>第2次放入map中的(key,value);
第3行----> key--¦--value ------>第3次放入map中的(key,value);
...................¦.........................................
第n行----> key--¦--value ------>第n次放入map中的(key,value);

这个根本看不懂是什么意思~~,不要用这些图示了,你是否可以说明一下 [0][0] [0][1] [0][2] [1][0] [1][1] ... 各放些什么。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧