声明二维变量 Java
declare 2d variable Java
我想知道是否可以为指向 Java 中二维数组中某个确切位置的变量赋值。
我正在通过
访问数组元素
imageMatrix[width][hight].getColor1()
并且由于我正在考虑不同的场景,因此通过例如声明 [width][high] 会更容易。 n1=[2][1]
然后调用
imageMatrix(n1).getColor1()
有可能吗?谢谢!
您可以定义一个 class 坐标,其中包含二维数组单元格的宽度和高度。然后将此 class 的一个实例用于您的 imageMatrix() 方法。
类似于:
public clas Coordinate{
private int height;
private int width;
/*Accessors and constructors...*/
}
您可以将ImageMatrix和Point定义为class。
要设置和获取每个点的颜色,您可以在 Point class.
中创建方法
这里我们将每个点存储在一个列表中,以便我们将来可以访问它们。
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;
}
}
我想知道是否可以为指向 Java 中二维数组中某个确切位置的变量赋值。 我正在通过
访问数组元素imageMatrix[width][hight].getColor1()
并且由于我正在考虑不同的场景,因此通过例如声明 [width][high] 会更容易。 n1=[2][1]
然后调用
imageMatrix(n1).getColor1()
有可能吗?谢谢!
您可以定义一个 class 坐标,其中包含二维数组单元格的宽度和高度。然后将此 class 的一个实例用于您的 imageMatrix() 方法。
类似于:
public clas Coordinate{
private int height;
private int width;
/*Accessors and constructors...*/
}
您可以将ImageMatrix和Point定义为class。
要设置和获取每个点的颜色,您可以在 Point class.
中创建方法
这里我们将每个点存储在一个列表中,以便我们将来可以访问它们。
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;
}
}