还是以上次实例为题,题中的红色部分public int[] getArray() 中的int [] 是什么意思呢?一般定义数组不是要数组名的吗??怎么在这当中就省略了呢??class Array{ // 表示数组
private int temp[] ; // 整型数组
private int foot ; // 定义添加位置
public Array(int len){
if(len>0){
this.temp = new int[len] ;
}else{
this.temp = new int[1] ; // 最少维持空间是1个
}
}
public boolean add(int i){ // 增加元素
if(this.foot<this.temp.length){ // 还有空间
this.temp[foot] = i ; // 增加元素
this.foot ++ ;// 修改脚标
return true ;
}else{
return false ;
}
}
public int[] getArray(){ return this.temp ;
}
};
class SortArray extends Array{ // 排序类
public SortArray(int len){
super(len) ;
}
public int[] getArray(){ // 覆写方法
java.util.Arrays.sort(super.getArray()) ; // 排序操作
return super.getArray() ;
}
};
class ReverseArray extends Array{ // 反转操作类
public ReverseArray(int len){
super(len) ;
}
public int[] getArray() {
int t[] = new int[super.getArray().length] ; // 开辟一个新的数组
int count = t.length - 1 ;
for(int x=0 ;x<t.length;x++){
t[count] = super.getArray()[x] ; // 数组反转
count-- ;
}
return t ;
}
};
public class ArrayDemo{
public static void main(String args[]){
// ReverseArray a = null ; // 声明反转类对象
// a = new ReverseArray(5) ; // 开辟5个空间大小
SortArray a = null ;
a = new SortArray(5) ;
System.out.print(a.add(23) + "\t") ;
System.out.print(a.add(21) + "\t") ;
System.out.print(a.add(2) + "\t") ;
System.out.print(a.add(42) + "\t") ;
System.out.print(a.add(5) + "\t") ;
System.out.print(a.add(6) + "\t") ;
print(a.getArray()) ; }
public static void print(int i[]){ // 输出数组内容
for(int x=0;x<i.length;x++){
System.out.print(i[x] + "、") ;
}
}
};

解决方案 »

  1.   

    int[]是getArray()的返回类型啊就是返回一个int类型的数组
      

  2.   

    int[]就是指这个方法返回值的类型是int类型的数组
      

  3.   

    就是说,这个方法getArray()返回值为int类型数组呗
      

  4.   

    public int[] getArray(){ return this.temp ;
    }
    类的一个方法 getArray() ,返回值为 int [] ,整型数组 ,你如果需要使用这个方法返回的数组,那么你自己定义一个int []  arr = 类实例.getArray() ;然后就可以使用 arr这个引用来进行相关操作 ;
      

  5.   

    返回的是int型数组。就是把你这个类中的private int temp[] ; // 整型数组 属性temp[] 返回以供使用