java - 动态添加对象到数组

标签 java arrays list oop dynamic-allocation

我有这段代码,它工作正常:

News news_data[] = new News[] {
new News("1","news 1","this is news 1"),
new News("2","news 2","this is news 2"),
new News("2","news 1","this is news 2"),
};

在这段代码中,我添加了 3 个新对象,但我必须在循环中动态添加它们。我怎样才能做到这一点?其实我不明白这个数组结构。请向我解释这段代码,如果你能让它简单的话

我试过了,但没用:

   News news_data[];
   for(i=1;i<3;i++){
      news_data=new News[] {
          new News("1","news 1","this is news 1"),
          new News("2","news 2","this is news 2"),
          new News("2","news 1","this is news 2"),
      };
   }

最佳答案

Java 中没有动态分配,Lists为此目的而来。 例如ListArrayListLinkedList……

这样使用:

// Declaring, initializing the list
ArrayList<News> list = new ArrayList<News>();
// Adding a news :
News news = new News("1","news 1","this is news 1");
list.add(news);

如果您已经有了一组 News(在您的示例中 news_data),您可以快速填写您的列表以开始:

for(News n : news_data) { list.add(n); }

关于java - 动态添加对象到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15347487/

相关文章:

java - 使用 if 语句检查 While 循环

python - 将字符串重新组合为 2 字符字符串列表的最佳方法

java - 如何从对象列表中提取 K "smallest"元素?

java - 什么时候必须关闭数据库连接? ( java )

java - Ctrl + Shift + L 快速搜索在 STS Spring Tools 4 和 Eclipse 中不起作用

java - 数组中最大的偶数

javascript - 基于对象属性的数组和变量名的数组

python - 如何从 Pandas Dataframe 创建多个元组列表

java - 使用扫描仪读取csv时如何不读取标题行?

javascript - 使用 Angular.js 高级过滤数据