【问题标题】:Arraylist and arrays in JavaJava中的Arraylist和数组
【发布时间】:2014-03-24 13:51:18
【问题描述】:

我正在尝试用 java 做一些基本的事情。我知道怎么做数组,但不知道 ArrayList。

" 编写一条 Java 语句,声明并初始化一个名为 values 的整数的 ArrayList"

对于一个简单的数组,我使用了int [] values ;

到目前为止,我已经想出了这个,但我不确定它是否正确。

new ArrayList<Integer>(Arrays.asList(values));

【问题讨论】:

标签: java arraylist


【解决方案1】:

这是您将如何初始化整数命名值的 ArrayList:

List<Integer> values = new ArrayList<Integer>();

ArrayList 实现List 接口并扩展AbstractList

数组列表以初始大小创建。当超过这个大小时,集合会自动放大。移除对象后,数组可能会缩小。

我建议在 ArrayLists 上查看tutorial,因为它们在现实世界中经常使用,并且您应该了解 ArrayList 类附带的一些方法。

Source

【讨论】:

  • 我想你忘记了 > 在第一个整数之后。谢谢你的帮助。
【解决方案2】:

几乎是对的。但是Arrays.asList()返回一个ArrayList,所以你所要做的就是声明一个ArrayList&lt;Integer&gt;并将方法调用的结果分配给它。

【讨论】:

  • 不,asList 返回一个实际上是Arrays.ArrayList 的列表。这是一个私有类,与java.util.ArrayList 不同。
  • 啊,好吧。这就是我在回答问题之前没有查看文档的结果。我可能应该删除这个答案。
【解决方案3】:

它应该可以工作

ArrayList<Integer> f = new ArrayList(Arrays.asList(values));

我使用 eclipse 作为编辑器。

【讨论】:

  • 您的代码可以编译,但它是错误的。 OP 有一个int[]。这只会编译,因为您有一个原始类型,如果您尝试从列表中获取任何内容,您将获得 ClassCastException。
猜你喜欢
  • 2011-04-08
  • 1970-01-01
  • 2012-05-15
  • 1970-01-01
  • 1970-01-01
  • 2011-06-09
  • 1970-01-01
  • 2017-01-18
  • 1970-01-01
相关资源
最近更新 更多