你的逻辑不对,循环的次数应该是你要添加的元素个数,然后在每次循环时用ArrayList的contains方法判断是否存在相等的元素,不存在则添加

解决方案 »

  1.   

    用这个:
    LinkedHashSet 代替ArrayList
      

  2.   

    if (arrWords.size() == 0)
    {
    arrWords.add(str);
    }for(int arrSize = 0; arrSize < arrWords.size(); arrSize++)
    {
    if(str.equals(arrWords.get(arrSize).toString()))
    {
    break;
    }
    else
    {
    arrWords.add(str);
    }
    }
      

  3.   

    arrWords.get(arrSize)的类型好象与str不匹配啊!
      

  4.   

    ArrayList arrWords = new ArrayList();
    String[] str ={"a","b","d","a","e",};
    for(int arrSize=0; arrSize<str.length; arrSize++)
    {
        if(arrWords.contains(str[arrSize]))
                         {
                continue;
                       }
               else{
                arrWords.add(str[arrSize]);
             } }
      

  5.   

    ArrayList中好像本来就不能添加互相等的元素?
      

  6.   

    //按照楼主的意思改写的
    import java.util.*;
    public class Test{
    public static void main(String[] args)
    {
    ArrayList arrWords = new ArrayList();
    arrWords.add("heelo");
    arrWords.add("world");
    arrWords.add("Test");
        String str ="Test";
    for(int arrSize=0; arrSize< arrWords.size(); arrSize++) //不是<=而是<
    {
       if(str .equals(arrWords.get(arrSize)))
             {
               break;
             }
             else
             {
               arrWords.add(str );
             }
    }
    for(int arrSize=0; arrSize< arrWords.size(); arrSize++)
    System.out.println(arrWords.get(arrSize));
    }
    }
      

  7.   

    同上(zjpangxie(老婆跳槽了,工资翻了三倍,这下更没地位了));
      

  8.   

    我的问题是:要将我从文件中读出来的单词一个一个的添加到ArrayList中,总工有多少个单词是不知道的,而ArrayList中开始时并没有其它的单词,是一个空的,现在当我想ArrayList中添加单词时,我想判断一下要加入的单词在ArrayList中存在不存在,如果不存在的话就添加,反之就不添加..问题关键是当我向其中添加第一个元素时,此时ArrayList的是空的,这样就会有问题产生!但不知道如何解决!!!
    大家的方法我试了一下,好象都不行,还请多多帮忙!!!!!!
      

  9.   

    当你读进ArrayList时,你不管有什么(是空也好,有数据也好)就添入ArrayList,是空就是add(""),这样就是说ArrayList里面肯定存有对象,然后取值的时候,在循环体里作判断,这样应该就行了吧。//(小胡叉)
      

  10.   

    其实象你这种需求应该用HashSet,TreeSet,LinkedHashSet之类的,免得自己判断到底有没有。
    如果非要用ArrayList
    那么
    for(int arrSize=0; arrSize< arrWords.size(); arrSize++) {
       if(str .equals(arrWords.get(arrSize))) //当然要两个for循环,才能满足你的需求~
             {
               break;
             }
       if(arrSize<=arrWords.size())
                 arrWords.add(str );
             }