如何仅修复Java ArrayList中重复的循环中的最后一个对象

DoubleU:

我正在一个项目中,在其中遍历数据库并将“配置文件”对象添加到arraylist(searchResults),但是由于某种原因,通过遍历结果集而创建的最后一个对象在arraylist中重复。请参见下面的代码段:

public static ArrayList<Profile> searchResults;


public void showSearchResults(){
    searchResults = new ArrayList<>();        
    searchResults.clear();

    try {
        // create SQL statement object for query
        statement = Connect.toDatabase();

        resultSet = statement.executeQuery (SQL query here)

        while(resultSet.next()){
            Profile newProfile = new Profile();

            newProfile.setUsername(resultSet.getString("username"));
            newProfile.setFirstName(resultSet.getString("first_name"));
            newProfile.setLastName(resultSet.getString("last_name"));
            newProfile.setGender(resultSet.getString("gender"));
            newProfile.setAge(String.valueOf(resultSet.getInt("age")));
            newProfile.setCity(resultSet.getString("city"));                

            searchResults.add(newProfile);
        }

    } catch (SQLException e) {
        // print out exceptions
        e.printStackTrace();
    } finally {
        // close the connections
        Connect.closeConnection(statement, resultSet);
        showResults = true;
    }
}


public ArrayList<Profile> getSearchResults() {
    return searchResults;
}

任何与此问题的帮助将不胜感激。提前致谢

sleepToken:

这是因为您已将个人资料类中的edit:属性声明static,并且作为一般规则,static属于类而非static属于对象。

如果只有一个实例要使用该方法,则静态方法很有用。

由于您在这里有多个实例(对象)=这不是您想要的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

循环中的Lambda存储在列表中,仅打印最后一个循环的评估值,而不是所有循环迭代中的不同值

在Java中删除ArrayList的最后一个对象

删除for循环中的最后一个逗号(java)

for循环中的lambda仅取最后一个值

我的Hashmap对象值列表对象仅返回我放置在ArrayList <Map <String,Object >>>();中的最后一个对象;

After Effects的脚本编辑器的控制台仅将最后一个对象记录在for循环中

如何获得_.forEach()循环中的最后一个迭代

如何删除for循环中的最后一个逗号

如何避免python循环中的最后一个逗号

在Android中仅显示最后一个ArrayList

如何检测循环中的最后一个ajax调用?

在while循环中如何使用最后一个命令?

循环中的onclick仅引用循环中的最后一个元素

如何在循环中将类添加到最后一个帖子的最后一个图像中[Wordpress]

Parse.com将对象保存在循环中,仅保存最后一个对象

Java中的ArrayList仅打印列表中的最后一个对象

如何在Laravel中的foreach循环中删除最后一个<hr>标记?

Java:检查循环中的当前项目是否是要循环的堆栈中的最后一个项目

存储库接口在for循环中仅保存最后一个对象实例,并且在保存之前批量插入更改对象

如何在for循环中从字符串中获取最后一个索引

如何从每个循环中的连接模型对象中删除一个对象

Javascript仅将for循环中的最后一个条目推送到对象

如何从foreach循环中删除最后一个逗号?

如何在一个循环中迭代以比较 javascript 中的两个对象

如何只等待在 C# 中的循环中声明的最后一个线程?

如何在C中的循环中包含最后一个元素?

如何在最后一个循环中删除“AND”(每个)

在 forEach 循环中,仅显示最后一个值

对象数组的 for 循环仅考虑最后一个对象