Как мне создать метод, который принимает двумерный массив в качестве параметра и отображает индекс строки с наибольшим количеством нулей?У меня есть программа, которая компилируется.Это просто отображает неверный результат.Метод countZeros()
подсчитывает количество нулей в каждой строке.Мне нужно сравнить каждый счет со следующим, поэтому я создал count
и count2
.Местоположение большего числа будет сохранено в rowNum
.Я не уверен, что я делаю неправильно.Я думаю, что это может быть неправильно индексации.
Вот мой код:
public class P118
{
public static void main(String[]args)
{
int[][]num = {{0,3,6,0,0}, {1,3,8,9,8}, {9,9,9,0,8}, {3,7,9,9,9}};
System.out.print(rowWithMostZeros(num));
}
public static int rowWithMostZeros(int[][]arr)
{
int count = 0, count2 = 0, rowNum = -1;
for(int row = 0; row<arr.length;row++)
{
count = countZeros(arr[row]);
if(count>count2)
{
rowNum = row;
}
}
for(int i=0; i<arr.length;i++)
{
count2 = countZeros(arr[i]);
}
return rowNum;
}
public static int countZeros(int[]x)
{
int count = 0;
for(int i = 0; i<x.length;i++)
{
if(x[i]==0)
{
count++;
}
}
return count;
}
}