java - 在 for 循环内部实例化 java 对象与在 for 循环外部实例化 java 对象

标签 java

这样做有什么区别?

Test test = new Test();
for(Person person:personLst) {
    test.setName(person.getName());
    test.setId(person.getId());
}

关于这个-

 for(Person person:personLst) {
    Test test = new Test();
    test.setName(person.getName());
    test.setId(person.getId());
}

在这两种情况下数据会被覆盖吗?

最佳答案

这很难回答,因为我们不知道

  • setName/setId是否有任何副作用
  • 您将如何处理测试对象。<​​/li>

从您的代码中我们可以看出,第二个循环只是一个无操作,第一个循环可以替换为仅更新列表中的最后一项,并忽略其他条目。

关于java - 在 for 循环内部实例化 java 对象与在 for 循环外部实例化 java 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26369944/

相关文章:

java - 为什么 int 类型值不装箱为 Integer

java - NOT NULL 约束失败 favorite. rating(代码 1299 SQLITE_CONSTRAINT_NOTNULL)

java - JPA 复合主键

java - 删除列表中某个范围内的元素

java - 使用 ant 脚本为我的所有项目自动增加 ivy 修订版

java - Java中如何调用方法

java - 打开一个exe窗口

java - 将中缀转换为大于 1 位数字的后缀

java - ReadFully() 有窒息的危险?

Java8 : How to filter a map of List value via stream