我在代码中添加了import java.util.ArrayList;
(per suggestions here),然后我遇到了两种不同的错误。他们是:
error: the type of the expression must be an array type but it resolved to java.util.ArrayList<java.lang.Integer>
和
error: length cannot be resolved or is not a field.
谁能告诉我他们的意思?我已经尝试通过在末尾添加()
来更改长度语句,但这会导致更多错误,然后我就开始了。
答案 0 :(得分:4)
对于ArrayList,您需要调用.size()方法来获取元素的数量,而不是长度。您不能像对待基本数组一样对待ArrayList。请提供一些代码示例以获取有关其他错误的帮助。
int i = myList.size();
编辑:
我刚刚看到,有人在你的另一个问题中已经提到了那个问题。 How to modify a java program from arrays to arraylist objects?
既然您尝试使用社区编码方法,只需要一些提示,让您成长,社区就可以节省一些神经;)
在编写代码时尝试在浏览器中打开JavaDoc:http://download.oracle.com/javase/6/docs/api/
如果要试验ArrayList,请查找它具有的方法和属性。通常,它还链接到适当的教程,例如,如何使用集合类。 浏览JavaDoc可能更快,而不是在这里发布一个问题,它将为您提供基本Java类的良好总体情况。
答案 1 :(得分:1)
对于您的第二个错误,您似乎可以互换使用arrays和List
,尽管它们是两种不同的数据类型。
在你的代码中,你可能有类似的东西:
int[] myArray = new ArrayList<Integer>();
您需要确定要使用的类型。如果您需要数组,请使用:
int[] myArray = new int[0]; // replacing 0 with your initial array size
如果您需要列表,请使用:
List<Integer> myList = new ArrayList<Integer>();
正如您之前提到的,您是Java的新手。你可能会发现阅读basic tutorials中的一些内容有价值;它们可以让您更好地了解代码中发生的事情。