两个list合成一个list,新的list里的元素是list还是map.

ltsf1984 2011-07-18 05:52:24
两个list合成一个list,新的list里的元素是list还是map.
有哪些法子合成一个list,请大家指点下。
...全文
571 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
原来 2011-07-21
  • 打赏
  • 举报
回复
list.addAll(); 前提是你的list 是同样地类型
ltsf1984 2011-07-20
  • 打赏
  • 举报
回复
谢谢大家的支持,自己试了出来了

import java.util.ArrayList;
import java.util.List;
public class testlist {
public static void main(String[] args) {
List<String> strlist = new ArrayList<String>();
strlist.add("test1");
strlist.add("test2");
strlist.add("test3");
List<String>numlist = new ArrayList<String>();
numlist.add("1");
numlist.add("2");
numlist.add("3");
numlist.add("4");
List<List>setlist = new ArrayList<List>();
setlist.add(strlist);
setlist.add(numlist);
System.out.println(setlist.size());
System.out.println(setlist);
System.out.println(strlist.addAll(numlist));
System.out.println(strlist);
}
}

以下是结果
2
[[test1, test2, test3], [1, 2, 3, 4]]
true
[test1, test2, test3, 1, 2, 3, 4]
我想要的是[[test1, test2, test3], [1, 2, 3, 4]]这个结果,其实很多人说的已经可以行,只是自己开始没明白,不过谢谢大家了。
Gavin4570 2011-07-19
  • 打赏
  • 举报
回复
还是一个LIST
飞跃颠峰 2011-07-19
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 ltsf1984 的回复:]

可能是我没说的太清楚,我的问题我补充说明下:
1.我问的是合成之后list里的元素是list还是map;
2.能不能由自己选定list里元素的类型。
从大家的说法中我知道了,list合成之后是一个连接操作,结果是一个连接之后的list,里面的元素就是mapb .
但我的主要想法是用一个新list把两个已有的list,如list1,list2作为新list的两个元素。
[/Quote]
List newlist = new ArrayList();
newlist.add(list1);
newlist.add(list2);
王金豆 2011-07-19
  • 打赏
  • 举报
回复
怎么可能是map?
zkp1990 2011-07-19
  • 打赏
  • 举报
回复
你想啥呢? list.addAll(list2);
zjg635469513 2011-07-19
  • 打赏
  • 举报
回复
楼上的可行
yuhuaguang 2011-07-19
  • 打赏
  • 举报
回复
map和list的存储方式不是不一样吗?可以转换?新手学习,,,
rainsilence 2011-07-19
  • 打赏
  • 举报
回复
// 一个大list里包含你的两个list
List list = new ArrayList();
list.add(list1);
list.add(list2);


Map是键值对,你的想法是不是List1和list2的元素个数相等,然后变成一个Map?
ltsf1984 2011-07-19
  • 打赏
  • 举报
回复
可能是我没说的太清楚,我的问题我补充说明下:
1.我问的是合成之后list里的元素是list还是map;
2.能不能由自己选定list里元素的类型。
从大家的说法中我知道了,list合成之后是一个连接操作,结果是一个连接之后的list,里面的元素就是mapb .
但我的主要想法是用一个新list把两个已有的list,如list1,list2作为新list的两个元素。
WCyaoming 2011-07-19
  • 打赏
  • 举报
回复
不可能是map啊。。。
学习ing 2011-07-19
  • 打赏
  • 举报
回复
list里存放list还是map,看你怎么操作了,两个list合成一个list,List.addAll(List),当然还是list 你没有用map怎么会有map呢。
桐桐-Dragon 2011-07-19
  • 打赏
  • 举报
回复
MAP 是K V形式的,如果是合成的是MAP 你会怎么设计呢?哪个是KEY 哪个是value???让一个list当key?一个当value?显然不现实。。。
这么一想你就明白了,绝对不会是MAP了。。只能是一个更大的list
追猫的兔子 2011-07-19
  • 打赏
  • 举报
回复
合并完之后生成一个LIST,都是一样的类型,不会有改变的
射手1985 2011-07-19
  • 打赏
  • 举报
回复
这个肯定是list了,怎么可能是map呢?
lyan99 2011-07-19
  • 打赏
  • 举报
回复
楼上的可行
kiss_vicente 2011-07-19
  • 打赏
  • 举报
回复
不知道你说的什么意思,看是这样不
List newlist = new ArrayList();
newlist.add(1,list1);
newlist.add(2.list2);
muliangding 2011-07-19
  • 打赏
  • 举报
回复
现在用List都是用泛型的了,里面的元素是要看你合并前两个元素的类型的!还有就是两个List合并最好是这两个List里面的元素是一致的!
huangdaxiang0726 2011-07-19
  • 打赏
  • 举报
回复
合成后肯定还是list呢 可以是两个list的交集也可以说两个list的并集
nuoyafz222 2011-07-19
  • 打赏
  • 举报
回复
LZ遇到如此问题能不能先参考下API自己试着实现想要实现的功能呢?
加载更多回复(7)

81,092

社区成员

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

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