声明2d变量Java

时间:2016-05-18 11:01:58

标签: java arrays variables assign

我想知道是否可以为一个变量赋值,该变量指向Java中2d数组中的某个确切位置。 我通过

访问数组元素
imageMatrix[width][hight].getColor1()

由于我正在考虑不同的场景,因此通过例如声明[width] [high]会更容易。 n1=[2][1],然后致电

imageMatrix(n1).getColor1()

有可能吗?谢谢!

2 个答案:

答案 0 :(得分:0)

您可以定义一个包含二维数组单元格宽度和高度的坐标。然后在imageMatrix()方法中使用此类的实例。

类似的东西:

public clas Coordinate{
    private int height;
    private int width;
/*Accessors and constructors...*/


}

答案 1 :(得分:0)

您可以将ImageMatrix和Point定义为类 要设置和获取每个点的颜色,您可以在Point类中创建方法 在这里,我们将每个点存储在列表中,以便将来可以访问它们。

import java.util.ArrayList;
public class ImageMatrix {
    Point point;
    public ImageMatrix(Point point){
        this.point = point;
    }

    public static void main(String[] args) {
        //to set color and store each point into a list
        ArrayList<Point> pointList = new ArrayList<>();
        //creating 9 points with different color
        for(int i=0;i<3;i++){
            for(int j=0;j<3;j++){
                Point point = new Point(i,j);
                point.setColor("color"+i+j);
                pointList.add(point);
            }
        }
        //to get color from each point
        for(Point point : pointList){
            System.out.println("color of point " + point.height +" and " + point.width +" is : " + point.getColor());
        }
    }
}

class Point{
    public int height;
    public int width;
    public String color;

    public Point(int height, int width){
        this.height = height;
        this.width = width;
    }
    public void setColor(String color){
        this.color = color;
    }
    public String getColor(){
         return this.color;
    }
}