• 集合去掉重复元素的两种方式


    ①、创建新集合方式
    import java.util.ArrayList;
    import java.util.Iterator;
    /*
     * ArrayList去除集合中字符串的重复值(字符串的内容相同)
     *
     * 分析:
     *   A:创建集合对象
     *   B:添加多个字符串元素(包含内容相同的)
     *   C:创建新集合
     *   D:遍历旧集合,获取得到每一个元素
     *   E:拿这个元素到新集合去找,看有没有
     *    有:不搭理它
     *    没有:就添加到新集合
     *   F:遍历新集合
     */
    public class ArrayListDemo {
     public static void main(String[] args) {
      // 创建集合对象
      ArrayList array = new ArrayList();
      // 添加多个字符串元素(包含内容相同的)
      array.add("hello");
      array.add("world");
      array.add("java");
      array.add("world");
      array.add("java");
      array.add("world");
      array.add("world");
      array.add("world");
      array.add("world");
      array.add("java");
      array.add("world");
      // 创建新集合
      ArrayList newArray = new ArrayList();
      // 遍历旧集合,获取得到每一个元素
      Iterator it = array.iterator();
      while (it.hasNext()) {
       String s = (String) it.next();
       // 拿这个元素到新集合去找,看有没有
       if (!newArray.contains(s)) {
        newArray.add(s);
       }
      }
      // 遍历新集合
      for (int x = 0; x < newArray.size(); x++) {
       String s = (String) newArray.get(x);
       System.out.println(s);
      }
     }
    }
    ②、选择排序思想

    import java.util.ArrayList;
    import java.util.Iterator;
    /*
     * 需求:ArrayList去除集合中字符串的重复值(字符串的内容相同)
     * 要求:不能创建新的集合,就在以前的集合上做。
     */
    public class ArrayListDemo2 {
     public static void main(String[] args) {
      // 创建集合对象
      ArrayList array = new ArrayList();
      // 添加多个字符串元素(包含内容相同的)
      array.add("hello");
      array.add("world");
      array.add("java");
      array.add("world");
      array.add("java");
      array.add("world");
      array.add("world");
      array.add("world");
      array.add("world");
      array.add("java");
      array.add("world");
      // 由选择排序思想引入,我们就可以通过这种思想做这个题目
      // 拿0索引的依次和后面的比较,有就把后的干掉
      // 同理,拿1索引...
      for (int x = 0; x < array.size() - 1; x++) {
       for (int y = x + 1; y < array.size(); y++) {
        if (array.get(x).equals(array.get(y))) {
         array.remove(y);
         y--;
        }
       }
      }
      // 遍历集合
      Iterator it = array.iterator();
      while (it.hasNext()) {
       String s = (String) it.next();
       System.out.println(s);
      }
     }
    }
  • 相关阅读:
    右下角老弹出盗版提示,以及登录界面出现正版验证对话框
    动态TSQL语句常見問題與解決方案
    验证码
    远程调用存储过程
    windows powershell
    屏蔽IE浏览器的刷新(不包括单个刷新按钮)
    获取数据库中的数据库有多少个
    网页刷新方法集合
    Win7中IIS7安装配置
    sql 根据字段查表名
  • 原文地址:https://www.cnblogs.com/rong123/p/10163864.html
Copyright © 2020-2023  润新知