Java 如何在此ArrayList中添加元素?

Java 如何在此ArrayList中添加元素?,java,arraylist,collections,Java,Arraylist,Collections,我一直在努力使这项工作,但我如何才能添加第四个元素 在这个数组列表中有多少个小时 public class HourCounts { private String[] hourCounts = {"One","Two","Three"}; public hourCounts() { hourCount[3] = new String ("Four") ; // how do I write the code to add a

我一直在努力使这项工作,但我如何才能添加第四个元素 在这个数组列表中有多少个小时

public class HourCounts {

    private String[] hourCounts = {"One","Two","Three"};
    public hourCounts() {
      hourCount[3] = new String ("Four") ; // how do I write the code to add a 
                                           // new element that says "Four"?     
    }     

    public void countHours() {
      int hour = 0;
       while(hour < hourCounts.length) {
          System.out.println(hour + ": " + hourCounts[hour]);
          hour++;
       }   
    }     
}

以下使用ArrayList的示例应该对您有所帮助:

List<String> hourCounts = private List<String> hourCounts 
                           = new ArrayList<>Arrays.asList("One", "Two", "Three"));
public hourCounts() {
    hourCount.add(new String ("Four"));
}
ArrayList是List最流行的实现之一。列表与数组[]不同

数组是固定长度的。清单是灵活的。因此,当您知道要存储的元素数量时,应该使用数组。e、 g.字符串[]。如果您不知道大小,或者您知道通过添加和删除元素,大小会不时变化,建议使用列表


另外,请记住,在Java中,字符串不是char[]。事实上,它们在某个字段中存储字符数组,但它与C或Python不同。

以下使用ArrayList的示例应该对您有所帮助:

List<String> hourCounts = private List<String> hourCounts 
                           = new ArrayList<>Arrays.asList("One", "Two", "Three"));
public hourCounts() {
    hourCount.add(new String ("Four"));
}
ArrayList是List最流行的实现之一。列表与数组[]不同

数组是固定长度的。清单是灵活的。因此,当您知道要存储的元素数量时,应该使用数组。e、 g.字符串[]。如果您不知道大小,或者您知道通过添加和删除元素,大小会不时变化,建议使用列表


另外,请记住,在Java中,字符串不是char[]。事实上,它们在某个字段中存储字符数组,但与C或Python不同。

Java数组在构造时具有固定长度,您可以复制当前数组以添加另一个元素。像

private String[] hourCounts = { "One", "Two", "Three" };

public hourCounts()
{
    hourCounts = Arrays.copyOf(hourCounts, hourCounts.length + 1);
    hourCounts[hourCounts.length - 1] = "Four";
}
但是,我想你想要一份这样的清单


最后,请遵循Java命名约定,不要将类命名为该类中的字段。

Java数组在构造时具有固定长度,您可以复制当前数组以添加其他元素。像

private String[] hourCounts = { "One", "Two", "Three" };

public hourCounts()
{
    hourCounts = Arrays.copyOf(hourCounts, hourCounts.length + 1);
    hourCounts[hourCounts.length - 1] = "Four";
}
但是,我想你想要一份这样的清单


最后,请遵循Java命名约定,不要将类命名为该类中的字段。

这不是ArrayList,而是数组。Java数组具有固定的长度。你真的想要一个列表吗?欢迎来到Stack Overflow!请带上,四处看看,并通读,尤其是和。从第二个链接开始:请求家庭作业帮助的问题必须包括到目前为止您为解决问题所做工作的摘要,以及您解决问题的困难的描述。这不是Arraylist,这是一个普通数组。在Itals实例化之后,您不能向普通数组添加元素,请按照Thx获得帮助!我的数组出错,需要一个arraylist。我已经解决了我的问题。那不是数组列表,那是数组。Java数组具有固定的长度。你真的想要一个列表吗?欢迎来到Stack Overflow!请带上,四处看看,并通读,尤其是和。从第二个链接开始:请求家庭作业帮助的问题必须包括到目前为止您为解决问题所做工作的摘要,以及您解决问题的困难的描述。这不是Arraylist,这是一个普通数组。在Itals实例化之后,您不能向普通数组添加元素,请按照Thx获得帮助!我的数组出错,需要一个arraylist。我已经解决了我的问题。我认为对集合的迭代可以从代码可读性而不是时间复杂性方面得到改进。我认为对集合的迭代可以从代码可读性而不是时间复杂性方面得到改进