ArrayList添加元素覆盖

时间:2015-05-15 19:36:03

标签: object arraylist

我试着在ArrayList(Article)中添加Objects(tempArticle),但它只是添加了它的最后一个元素。 我真正想要做的是将每篇文章的作者保持在一个单独的行中,就像标准化一样。 首先,我将每个作者保存在一个临时的ArrayList(temp)中,然后尝试设置(tempArticle)的作者并将其添加到List(Article)中。 它一直在压倒它。 但它只是添加了ArrayList中的最后一个Last Author:/ 这是我的代码。

        else if (qName.equalsIgnoreCase("Author")) {

        //  System.out.println(tempVal);

            if(tempArticle.getAuthor() != null){

                String old=tempArticle.getAuthor();

                x=tempVal;
                temp.add(x);
                Flag=1;

                if(temp.indexOf(old) < 0 ){

                    System.out.println("Old:  "+old);
                    temp.add(old);
                }

            }
            tempArticle.setAuthor(tempVal);
        }
        if(qName.equalsIgnoreCase("Article")) {
            //add it to the list
            int Count=0;
            if(Flag >= 1 ){
                while(Count <= temp.size() -1){
                    //System.out.println(" Author: ,   "+temp.get(Count)+"  prev: "+tempArticle.getAuthor());
                    tempArticle.setAuthor(temp.get(Count));
                    System.out.println(tempArticle.getAuthor());

                    Article.add(tempArticle);
                    Count++;
                }
                Flag=0;
                temp.clear();
            }
            else{
                Article.add(tempArticle);
            }
        }

我尝试打印临时数组的所有索引,其中我存储了所有作者,但是当我尝试做tempArticle.setAuthor()时,它只存储该数组的最后一个作者。

0 个答案:

没有答案