本人初学JAVA 有个小问题
有个LIST对象,有a,b,c,d,e五个元素都为string类型
有值为:{aa,11,name1,bb,cc},
{aa,11,name2,bb,cc},
{aa,12,name1,bb,cc},
{aa,12,name2,bb,cc},
如果要把它转变为另个LIST.也有5个元素,其中c元素为一个LIST对象,
转变方法为a,b元素相同条件下将c元素变为LIST对象。
即:{aa,11,{name2},bb,cc},
{aa,12,{name1,name2},bb,cc},
请问该如何实现,哪位牛人给个实现方法,谢谢
[b]问题补充:[/b]
lovewhzlq老兄:你写得判断的方法我试了可以了,但是可以把给新的LIST赋值的代码写下吗?谢谢~~~~~~~~~~ :x
[b]问题补充:[/b]
最关键就是把要变成LIST的那个元素的赋值写法
关于java 中LIST对象转存?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- wanghaolovezlq 2009-04-29 00:16关注
[code="java"]
import java.util.*;public class ListTest {
/** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub List<List<String>> list = new ArrayList<List<String>>(); List<String> l1 = new ArrayList<String>(); l1.add("aa"); l1.add("11"); l1.add("name1"); l1.add("bb"); l1.add("cc"); List<String> l2 = new ArrayList<String>(); l2.add("aa"); l2.add("11"); l2.add("name2"); l2.add("bb"); l2.add("cc"); List<String> l3 = new ArrayList<String>(); l3.add("aa"); l3.add("12"); l3.add("name1"); l3.add("bb"); l3.add("cc"); List<String> l4 = new ArrayList<String>(); l4.add("aa"); l4.add("12"); l4.add("name2"); l4.add("bb"); l4.add("cc"); list.add(l1); list.add(l2); list.add(l3); list.add(l4); List<List> result = new ArrayList<List>(); List<Integer> hasVisited = new ArrayList<Integer>(); for (int i = 0; i < list.size(); i++) { if(hasVisited.contains(i)) { continue; } List tempi = list.get(i); List item = new ArrayList(); List c = new ArrayList(); item.add(tempi.get(0)); item.add(tempi.get(1)); c.add(tempi.get(2)); for (int j = i + 1; j < list.size(); j++) { List tempj = list.get(j); if (tempi.get(0).equals(tempj.get(0)) && tempi.get(1).equals(tempj.get(1))) { c.add(tempj.get(2)); hasVisited.add(j); } } item.add(c); item.add(tempi.get(3)); item.add(tempi.get(4)); result.add(item); } System.out.println(result); System.out.println(hasVisited); }
}
[code]
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 在不同的执行界面调用同一个页面
- ¥20 基于51单片机的数字频率计
- ¥50 M3T长焦相机如何标定以及正射影像拼接问题
- ¥15 keepalived的虚拟VIP地址 ping -s 发包测试,只能通过1472字节以下的数据包(相关搜索:静态路由)
- ¥20 关于#stm32#的问题:STM32串口发送问题,偶校验(even),发送5A 41 FB 20.烧录程序后发现串口助手读到的是5A 41 7B A0
- ¥15 C++map释放不掉
- ¥15 Mabatis查询数据
- ¥15 想知道lingo目标函数中求和公式上标是变量情况如何求解
- ¥15 关于E22-400T22S的LORA模块的通信问题
- ¥15 求用二阶有源低通滤波将3khz方波转为正弦波的电路