java - 如果调用 matrix2.getElement(int y, int x) 我在 getElement 方法中键入什么
问题描述
对于这个任务,我们正在编写一个不可变类,它实现了一个矩阵接口,该接口具有一些矩阵函数,加法,减法乘法......我们克隆提供的数据以创建一个不可变的新矩阵。接口中有一个 getElement(int y, int x) 方法,它返回一个 int。当提供的只是索引时,我无法弄清楚如何提取元素。我知道该方法是在矩阵对象上调用的,因此这是我们从我需要的 getElement 方法中的关键字中提取的矩阵。
public class Practice {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int[][] data2 = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
Practice m1 = new Practice(data2);
m1.getElement(0, 1);
}
public Practice(int[][] matrix){
cloneMatrix(matrix);
}
public static int[][] cloneMatrix(int[][] data) {
int[][] newMatrix = new int[data.length][data[0].length];
for (int i = 0; i < data.length; i++) {
System.arraycopy(data[i], 0, newMatrix[i], 0, data[i].length);
}
return newMatrix;
}
public int getElement(int y, int x) {
int !!!WHAT GOES HERE!!! [y][x];
return j;
}
}
解决方案
您需要更改一些代码以使其正常工作:)
public class Practice {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int[][] data2 = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
Practice m1 = new Practice(data2);
m1.getElement(0, 1);
}
public int[][] myMatrix; // Changed this line
public Practice(int[][] matrix) {
this.myMatrix = cloneMatrix(matrix); // Changed this line
}
public static int[][] cloneMatrix(int[][] data) {
int[][] newMatrix = new int[data.length][data[0].length];
for (int i = 0; i < data.length; i++) {
System.arraycopy(data[i], 0, newMatrix[i], 0, data[i].length);
}
return newMatrix;
}
public int getElement(int y, int x) {
return this.myMatrix[y][x]; // Changed this line
}
}
推荐阅读
- java - 成功下载java后删除临时文件
- vue.js - 如何在 NuxtJS 中使用 lottie 来实现悬停、单击和所有功能?
- scala - Spark(Scala)成对减去数据框中的所有行
- android - (React-Native)任务:app:generatePackageList FAILED
- javascript - 无法读取 null 的属性“offsetWidth”?
- node.js - “ConnectionNotFoundError:未找到连接“默认”” - 类属性
- javascript - whit CSS 伪元素不旋转
- windows - git push 需要永远的窗口
- apache-spark-mllib - 如何在 sparkml 分类中指定“正类”?
- qml - 通过 QQuickView 在 Qwidget 中使用 QML 时 QML 虚拟键盘的大小和位置