两个list合并的问题

本文提供了一个Java程序示例,展示了如何使用List和Set集合进行数据操作,包括添加元素、合并列表并去除重复项等常见任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import java.util.ArrayList;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
import java.util.Set;


/**
 * 写一个程序:满足 1, 生成2个List 2,
 *往第一个List中放3个字符串:“关羽”,“张飞”,“赵云”,“黄忠”,“马超”;第二个List放“关羽”,“张辽”,“徐晃”,“许褚”,“曹仁”,“夏侯渊”
 * 3,循环打印第一个List中的所有字符串,只要该字符串不是马超; 4,将2个List拼成一个List,是所有List的合并,循环打印。 5,
 *将2个List合为1个List,过滤重复的记录,循环打印。
 */


public class ListTest {
    List list1 =new ArrayList();

    List list2 =new ArrayList();

    ListTest(){

      list1.add("关羽");
      list1.add("张飞");
      list1.add("黄忠");
      list1.add("马超");

      list2.add("关羽");
      list2.add("张辽");
      list2.add("徐晃");
      list2.add("许褚");
      list2.add("夏侯渊");
    }

    /**循环打印第一个List中的所有字符串,只要该字符串不是马超; */
    public voidtest1Print() {
       Stringstr;
      System.out.println("\n循环打印第一个List中的所有字符串");
       Iterator it= list1.iterator();
       while(it.hasNext()) {
          str =it.next().toString();
          if(!str.equals("马超"))
            System.out.println(str);
       }
    }

    /**循环打印第一个List中的所有字符串; */
    public voidshow(List list) {
       Iteratorit;
       for (it =list.iterator(); it.hasNext();)
         System.out.println(it.next());

    }

    /**将2个List拼成一个List,是所有List的合并,循环打印 */
    public voidheBin() {
       List list =new ArrayList();
       list =list1;
      list.addAll(list2);
      System.out.println("\n将2个List拼成一个List,是所有List的合并,循环打印");
      show(list);
    }

    /**将2个List合为1个List,过滤重复的记录,循环打印 */
    public voidguoLv() {
       Set set1 =new HashSet();
      set1.addAll(list1);
      set1.addAll(list2);
      System.out.println("\n将2个List合为1个List,过滤重复的记录");
       for(Iterator it = set1.iterator(); it.hasNext();)
         System.out.println(it.next());
    }

    publicstatic void main(String[] args) {
       ListTesttest = new ListTest();
      test.test1Print();
      test.heBin();
      test.guoLv();
    }

}
http://blog.sina.com.cn/s/blog_3e8308f7010008q3.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值