2010-04-04 91 views
2

我目前有一个方法来检查3x3网格中的中心项目是什么,如果8个相邻位置中包含我正在检查的内容,我想标记该方块在长度为7的数组为1。从一个方法创建并返回一个数组

要做到这一点,我需要创建并返回一个数组在我的方法,是否有可能这样做?

回答

4

不知道是什么问题。 您的意思是?

public int[] myMethod() { 
//... 
int[] res = new int[7]; 
//... set values ... 
return res; 
} 
+0

就是这样!谢谢。 一个简单的问题,虽然......这会使我每次运行一个新的数组,或者我可以重复使用相同的数组,主程序运行在一个无限循环,将不得不运行此方法每循环运行1600次。 – Troy 2010-04-04 08:24:14

+0

每次都会创建一个新的数组。要重复使用相同的数组,请在每次调用时创建方法并传递相同的实例。 – 2010-04-04 08:44:01

+0

@Troy:如果是这样的话,你可能想让数组变成静态的(只要确保每次都设置索引,因为旧值仍然存在)。但是,如果您在完成数组时抛弃数组(即将数组声明为在同一个循环中调用方法),那么请不要担心 - Java的GC将处理内存,并且您只需要一些额外的对象创建正在进行(可能不是一个大问题,但如果不确定,则为配置文件)。 – Phil 2010-04-04 08:46:46

0

声明的返回类型以二维阵列(int[][]),创建在方法中的阵列和返回。

public int[][] getArray() { 
    int[][] myArray = new int[3][3]; 
    // Populate array 
    return myArray; 
} 
相关问题