【发布时间】:2013-02-03 08:27:32
【问题描述】:
目标 -
尝试创建具有少量函数的类 - 创建数组并对其进行一些操作 现在我希望用户输入数组的长度并将其返回给用户
做了什么? -
创建的类:
public class Array {
private int myArray[];
private int count;
Array(int length){
myArray = new int[length];// create mas of diff length
count =0 ; // count q-ty of elements
}
//array out
public static void outArray(int array[]){
int length = array.length;
for (int i=0; i<length+1; i++){
System.out.println("Element number ["+i+"] is ["+ array[i]+"]");
}
}
还有主要的:
public static void main(String[] args) throws IOException {
System.out.println("What length of your array? []");
Array matrix = new Array(Array.getCharToInt());
Array.outArray(matrix);
....
发生了什么 -
这里我有一些问题 Array.outArray(矩阵);
问题 -
我在哪里做错了?也尝试了很多变体,但无法理解我做错了什么。
更改获取数组实例的函数,但现在我的方法有问题.. - 无法获取数组的长度`
Array(int length){
myArray = new int[length];// create mas of diff length
int myLength=myArray.length;
}
//array out
public static void outArray(Array array){
int length = array.myLength; - cant do like this - "myLength cannot be resolved or is not a field".
我想如果我在构造函数中添加一些字段,我可以使用它还是我做错了什么?
【问题讨论】:
-
究竟什么是“一些问题”?
-
您的
outArray函数不采用Array实例,而是采用实际的 int 数组。把它修好,你会没事的。 -
了解您想要做什么也会有所帮助。 “用它做一些操作”太模糊了。
-
您还想删除
i<length+1之后的+1,因为如果您尝试运行该程序,您会得到一个ArrayIndexOutOfBoundsException。 -
改变方法 - 见后面的问题
标签: java arrays methods constructor