【问题标题】:Get specific element from array in Java从Java中的数组中获取特定元素
【发布时间】:2019-03-18 17:30:17
【问题描述】:

基本上,我试图从 java 中的二维数组中返回一个元素。我创建了一个单独的 Matrix 类,在该类中我想编写一个 get_element 方法,该方法将矩阵和矩阵本身中我想要的元素的坐标作为输入,但是我不知道该怎么做。

public static double get_element(Matrix A, double m , double n)
{  
    for(int i=0;i<A.rows;i++)
        for(int j=0;j<A.cols;j++)
           return A.data[m][n];


}

这就是我的代码现在的样子。我收到一个错误,提示 double 和 int 之间的有损转换。

【问题讨论】:

  • 你为什么传递/期望索引为doubles?他们应该是int
  • 数组的索引是整数,而不是双精度数。使用适当的类型。
  • 你不应该使用双精度数作为数组的索引,而是传入整数。您无法访问位置 [0.5]。编译器可能会抱怨,因为它需要将它们转换为整数才能将它们用作索引。
  • 顺便说一句:遵循命名约定:方法应命名为getElement,矩阵应命名为a(或者,更好的描述性名称)

标签: java arrays matrix


【解决方案1】:

你不需要循环。此外,您需要将双精度转换为int

return A.data[(int) m][(int) n];

或者(更好),您更改方法签名:

public static double get_element(Matrix A, int m , int n) {  
    return A.data[m][n];
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-12
    • 2011-07-30
    • 1970-01-01
    • 2013-07-05
    • 2018-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多