package JzxPro; import java.util.ArrayList; import java.util.Iterator; /** * ArrayList去除集合中字符串的重复值(字符串的内容相同) * * 分析: * A:创建集合对象 * B:添加多个字符串元素(包含内容相同的) * C:创建新集合 * D:遍历旧集合,获取得到每一个元素 * E:拿这个元素到新集合去找,看有没有 * 有:不管 * 没有:就添加到新集合 * F:遍历新集合 * Created by Administrator on 2016/11/2 0002. */ public class Arraylist { public static void main(String[] args) { /* //创建集合对象 ArrayList array=new ArrayList(); //添加多个字符串元素(包含内容相同的) array.add("java"); array.add("android"); array.add("hello"); array.add("java"); array.add("hello"); array.add("word"); array.add("word"); array.add("word"); array.add("hello"); array.add("android"); array.add("java"); //创建新集合 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 i=0;i<newarray.size();i++) { String s=(String)newarray.get(i); System.out.println(s); } */ /*
第二种 ArrayList去除集合中字符串的重复值(字符串的内容相同) 不能创建新的集合,就在以前的集合上做。 */ //创建集合对象 ArrayList array=new ArrayList(); //添加多个字符串元素(包含内容相同的) array.add("java"); array.add("android"); array.add("hello"); array.add("java"); array.add("hello"); array.add("word"); array.add("word"); array.add("word"); array.add("hello"); array.add("android"); array.add("java"); // 选择排序思想 // 拿0索引的依次和后面的比较,有就把后面的干掉 // 同理,拿1索引... for(int i=0;i<array.size()-1;i++) { for(int j=i+1;j<array.size();j++) { if(array.get(i).equals(array.get(j))) { array.remove(j); j--;
//如果不进行j--,就会因为多个连续一样的而使得结果产生误差。 } } } Iterator it=array.iterator(); while(it.hasNext()) { String s=(String)it.next(); System.out.println(s); } } }