设计一个名为Location的二维数组定位类,包含三个公共数据域row(int类型)、column(int类型)、maxValue(double类型)。 编写方法,返回二维数组中最大值的相关信息,方法签名如下: public static Location locateLargest(double[][] a) 编写程序,提示用户输入一个二维数组,然后显示该数组中的最大元素以及其位置。
时间: 2023-07-16 08:11:26 浏览: 118
以下是代码实现:
```
import java.util.Scanner;
public class Location {
public int row;
public int column;
public double maxValue;
public static Location locateLargest(double[][] a) {
Location loc = new Location();
loc.maxValue = a[0][0];
loc.row = 0;
loc.column = 0;
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
if (a[i][j] > loc.maxValue) {
loc.maxValue = a[i][j];
loc.row = i;
loc.column = j;
}
}
}
return loc;
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter the number of rows and columns in the array: ");
int rows = input.nextInt();
int columns = input.nextInt();
double[][] array = new double[rows][columns];
System.out.println("Enter the array:");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < columns; j++) {
array[i][j] = input.nextDouble();
}
}
Location loc = locateLargest(array);
System.out.println("The location of the largest element is " + loc.maxValue + " at (" + loc.row + ", " + loc.column + ")");
}
}
```
该程序先提示用户输入二维数组的行数和列数,然后再提示用户输入数组元素,接着调用 `locateLargest` 方法找到最大值及其位置,最后输出结果。
阅读全文