首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果调用matrix2.getElement(int y,int x),我应该在getElement方法中键入什么

如果调用matrix2.getElement(int y,int x),我应该在getElement方法中键入什么
EN

Stack Overflow用户
提问于 2020-05-25 04:19:02
回答 1查看 35关注 0票数 0

对于这个赋值,我们编写了一个不可变的类,它实现了一个矩阵接口,它有一些矩阵函数,加,减,乘…我们克隆提供的数据来创建一个新的矩阵,该矩阵是不可变的。接口中有一个getElement(int,int )方法,它返回一个整数。当所有提供的都是索引时,我不知道如何提取元素。我知道这个方法是在一个矩阵对象上调用的,所以这是我们从我需要的东西中提取的矩阵,也就是getElement方法中的关键字。

代码语言:javascript
复制
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 !GOES HERE! [y][x];
        return j;
    }

}
EN

回答 1

Stack Overflow用户

发布于 2020-05-25 04:26:53

您需要稍微修改一下代码才能使其正常工作:)

代码语言:javascript
复制
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
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61991959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档