为类设置值';Java中的参数

为类设置值';Java中的参数,java,Java,我有一个java类,其列表如下: public class TestEntity { private String name; private List<DataEntry> dataEntries; } class DataEntry { private String para1; private String para2; private String para3; } 公共类测试{ 私有字符串名称; 私有列表数据项; } 类数据项{ 私有

我有一个java类,其列表如下:

public class TestEntity {
   private String name;
   private List<DataEntry> dataEntries;
}

class DataEntry {
    private String para1;
    private String para2;
    private String para3;
}
公共类测试{
私有字符串名称;
私有列表数据项;
}
类数据项{
私有字符串para1;
私有字符串para2;
私有字符串para3;
}

如何将DataEntry的实例添加到TestEntity的实例中?

如果您只是实例化它,那就相当简单了

dataEntries.add(new DataEntry());

如果你只是实例化它,那就相当简单了

dataEntries.add(new DataEntry());

首先,您需要确保您的列表实际上不为空,如:

private final List<DataEntry> entries = new ArrayList<>();
或者可能更有用:

DataEntry entry = new DataEntry();
entry.para1 = ...

entries.add(entry);
当然,更现实的做法是向DataEntry类添加自定义构造函数,以便您可以通过构造函数传递所需的参数

或者,添加一个方法

void addEntry(DataEntry entry) {
  entries.add(entry);

到您的
TestEntity
类。

首先,您需要确保您的列表实际上不是空的,例如:

private final List<DataEntry> entries = new ArrayList<>();
或者可能更有用:

DataEntry entry = new DataEntry();
entry.para1 = ...

entries.add(entry);
当然,更现实的做法是向DataEntry类添加自定义构造函数,以便您可以通过构造函数传递所需的参数

或者,添加一个方法

void addEntry(DataEntry entry) {
  entries.add(entry);

对于您的
测试
类。

有两种可能性:

第一:添加构造函数以添加条目:

public class TestEntity {
   private String name;
   private List<DataEntry> dataEntries;
   public TestEntity (String name,DataEntry entry){
     this.name = Name;
     this.dataEntry = new ArrayList<>();
     this.dataEntry.add(entry)
   }
}

有两种可能性:

第一:添加构造函数以添加条目:

public class TestEntity {
   private String name;
   private List<DataEntry> dataEntries;
   public TestEntity (String name,DataEntry entry){
     this.name = Name;
     this.dataEntry = new ArrayList<>();
     this.dataEntry.add(entry)
   }
}

通过编写这样做的代码。有几种方法,但你至少应该尝试一下。我注意到你的问题仍然是“开放的”——因为你没有接受答案。请看一看,然后决定是否要回答。或者让我知道是否有什么我可以做的,以加强我的投入,使其值得接受。接受帮助未来的读者确定问题是否得到解决,并对花时间回答你的人表示感谢。谢谢通过编写这样做的代码。有几种方法,但你至少应该尝试一下。我注意到你的问题仍然是“开放的”——因为你没有接受答案。请看一看,然后决定是否要回答。或者让我知道是否有什么我可以做的,以加强我的投入,使其值得接受。接受帮助未来的读者确定问题是否得到解决,并对花时间回答你的人表示感谢。谢谢这是这个网站的一个令人讨厌的功能。这种不公正使我怒不可遏。“我的向上投票不能删除向下投票,但至少它可以删除负面显示”。@duffymo是的。我怀疑某处可能有一个“伟大的”复制品,但经过一分钟的搜索,我放弃了,并决定我能够比找到那个“完美的复制品”更快地写出准确的答案。谢谢你鼓励的话。几乎所有的东西都有重复的。在这个游戏中,没有更多的新问题或几乎没有。这是这个网站的一个恼人的功能。这种不公正使我怒不可遏。“我的向上投票不能删除向下投票,但至少它可以删除负面显示”。@duffymo是的。我怀疑某处可能有一个“伟大的”复制品,但经过一分钟的搜索,我放弃了,并决定我能够比找到那个“完美的复制品”更快地写出准确的答案。谢谢你鼓励的话。几乎所有的东西都有重复的。在这场比赛中,没有更多的新问题或几乎所有的问题。@GhostCat关于落选的问题,我现在已经不再考虑了。但我不认为我的答案更糟。为什么我们不应该有一个构造函数用一个条目初始化一个列表?我不认为这是唯一的构造函数。只是在概念层面上感觉很奇怪。但不管怎样,现在是圣诞节;-)@幽灵猫我在那里没有看到任何奇怪的东西。用一个值初始化一个列表,然后再添加更多的值。对我来说,这听起来像是指向错误方向的指示。如果您在创建时知道您的元素,请在那里提供它们。如果您以后知道它们,请稍后添加所有它们。有一个构造函数接受单个列表元素,并有一个方法在以后添加更多元素。。。对我来说,这听起来像是“不分种族”的担忧。是的,我在这件事上支持GhostCat。如果一个构造函数将一个参数放入一个列表中,以后可以在列表中添加其他元素,那就错了。@GhostCat关于downvoces,我现在不再考虑了。但我不认为我的答案更糟。为什么我们不应该有一个构造函数用一个条目初始化一个列表?我不认为这是唯一的构造函数。只是在概念层面上感觉很奇怪。但不管怎样,现在是圣诞节;-)@幽灵猫我在那里没有看到任何奇怪的东西。用一个值初始化一个列表,然后再添加更多的值。对我来说,这听起来像是指向错误方向的指示。如果您在创建时知道您的元素,请在那里提供它们。如果您以后知道它们,请稍后添加所有它们。有一个构造函数接受单个列表元素,并有一个方法在以后添加更多元素。。。对我来说,这听起来像是“不分种族”的担忧。是的,我在这件事上支持GhostCat。如果一个构造函数将一个参数放入一个列表中,以后可以在其中添加其他元素,那就错了。