String str = "a,b,c,d,a,b";将重复的a,b值去掉呢?
想得到的结果是:a,b,c,d。请问各位怎样做呀?

解决方案 »

  1.   

    for example
    String str = "a,b,c,d,a,b ";
    Set set = new HashSet();
    String[] v = str.split(",");
    for (int i=0; i<v.length; i++) {
        set.add(v[i]);
    }
    System.out.println(Arrays.toString(set.toArray(new String[0])));
      

  2.   

    楼上的好象不对.你运行下.import java.util.*;
    public class Test { public static void main(String[] args) {
    String   str   ="a,b,c,d,a,b";
    String[] result = str.split(","); HashSet hs=new HashSet();
        for(int i=0;i<result.length;i++){
        hs.add(result[i]);
        }
    System.out.println(hs);
    Iterator it=hs.iterator();
    int j=0;
    String[] re = new String[hs.size()];
    while(it.hasNext())       //去掉重复后附给数组
    {
    re[j]=(String)it.next();
    j++;
    }
    Arrays.sort(re);  //排序
    for(int m=0;m<re.length;m++){     //输出
    System.out.print(re[m]+",");
    }
    System.out.println();
    }}
      

  3.   

    看看行不行public class compare{
     
    public static void main(String[] args){ String testString = "asdasewdskdklowiuernvknsdkl";
    for(int ind=0;ind<testString.length();ind++){
    Character b = testString.charAt(ind);
    int charInd=ind+1;
    while(charInd<testString.length())
    {
    if(testString.charAt(charInd)==b)
    {
    testString=testString.substring(0,charInd)+testString.substring(charInd+1,testString.length());
    }
    charInd++;
    }
    }
    System.out.println(testString);


    }


    }
      

  4.   

    上面的好像有点问题
    import java.util.HashMap;
    import java.util.Map;
    public class compare{
     
    public static void main(String[] args){ String testString = "aaaaaasdsdsdsssdjkls;ljs;dlfkjiewroipquwjsndvkjxhvclkashdfd";
    String result="";
    Map map=new HashMap();
    for(int ind=0;ind<testString.length();ind++){

    Character b = testString.charAt(ind);
    if(map.get(b)==null)
    {
    map.put(b, b);
    result+=b;
    }



    }
    System.out.println(result);


    }


    }