Im пытается найти минимальное и максимальное значение в этом 2d массиве. Я получаю правильный вывод, (-10 как мин, 40 как максимум), но я не могу пройти второй тест, который есть {73,0} Любые идеи?Java 2d array using if else
public class ArraysKeyValue {
public static void main (String [] args) {
final int NUM_ROWS = 2;
final int NUM_COLS = 2;
int [][] milesTracker = new int[NUM_ROWS][NUM_COLS];
int i = 0;
int j = 0;
int maxMiles = 0; // Assign with first element in milesTracker before loop
int minMiles = 0; // Assign with first element in milesTracker before loop
milesTracker[0][0] = -10;
milesTracker[0][1] = 20;
milesTracker[1][0] = 30;
milesTracker[1][1] = 40;
maxMiles = milesTracker[1][1];
minMiles = milesTracker[0][0];
for (i = 0; i < NUM_ROWS; i++) {
for (j = 0; j < NUM_COLS; j++) {
if (i == 0 && j == 0) {
minMiles = milesTracker[i][j];
maxMiles = milesTracker[i][j];
}
if (milesTracker[i][j] > maxMiles){
maxMiles = milesTracker[i][j];
}
}
}
System.out.println("Min miles: " + minMiles);
System.out.println("Max miles: " + maxMiles);
}}
Вы не хотите 'еще if'. В некоторых случаях он не устанавливал 'minMiles'. – radoh
@radoh может я знаю, в каком случае? –
Фактически, если установлено minMiles = maxMiles = milesTracker [0] [0], это может быть даже более быстрое решение (значение может быть меньше, чем 'minMiles', когда оно также меньше, чем' maxMiles'). – ctst