日期:2014-05-20  浏览次数:20950 次

求一个简便算法
有一个集合
Java code
List ls=new ArrayList();
    ls.add("aa");
        ls.add("aa");
        ls.add("aa");
                  ls.add("aa");
                  ls.add("bb");
        ls.add("bb");
        ls.add("cc");
        ls.add("dd");
        ls.add("ee");
        ls.add("ff");
        ls.add("gg");

怎么去掉集合ls中重复的项,结果ls是{"aa","bb","cc","dd","ee","ff","gg"}.

------解决方案--------------------
Java code

// 用 Set 接口
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Set<String> ls = new TreeSet<String>();
        ls.add("aa");
        ls.add("aa");
        ls.add("aa");
        ls.add("aa");
        ls.add("bb");
        ls.add("bb");
        ls.add("cc");
        ls.add("dd");
        ls.add("ee");
        ls.add("ff");
        ls.add("gg");
        for (String s : ls) {
            System.out.println(s);
        }

    }
}
// result:
// aa
// bb
// cc
// dd
// ee
// ff
// gg

------解决方案--------------------
Java code

List<String> ls=new ArrayList<String>();
        ls.add("aa");
            ls.add("aa");
            ls.add("aa");
                      ls.add("aa");
                      ls.add("bb");
            ls.add("bb");
            ls.add("cc");
            ls.add("dd");
            ls.add("ee");
            ls.add("ff");
            ls.add("gg");
     Set <String>lt=new TreeSet<String>();
     for(String s:ls){
         lt.add(s);
     }
      for(String str:lt) {
          System.out.println(str);
      }