我开始编写uni的作业编码,但过了一会儿,我就陷入了困境。
public class MostCommonElemnt
{
//private int[] liste;
public MostCommonElemnt()
{
//int[] liste = {1,2,3,4,5,6,7,8,9};
}
在构造函数中初始化数组是不是很糟糕,还是只是没有必要?
public int findMostCommonElemnt(int[] list)
{
int help = 0;
for(int i = 0; i < liste.length; i++)
{
help = list[i];
}
return help;
}
这里我试图获取从我的int数组返回的特定int值(或数字),但“help”只返回int数组中的最后一个数字。我如何获得第二或第四?要查看所有这些,我可以使用System.out.println();
public static void main (int[] args)
{
//int[] liste = {1,2,3,4,5,6,7,8,9};
System.out.println(new MostCommonElemnt().findMostCommonElemnt(int[] list));
}
}
在本节中,我试图制作一个testMethod但是,我无法让它工作, BlueJ(我们必须将它用于大学)总是抱怨某事。
后我特别不知道该怎么做 new MostCommonElemnt().
我只是想,程序采取特定的数字,我想测试。例如:{1,2,3,4,5,6,7 ...} 否则我总是要输入它们,这会很快。
答案 0 :(得分:0)
这可能会更短,但确实有效。
public static int findMostCommonElement(int[] list) {
int max = 0;
for (int i : list)
if (i > max)
max = i;
int[] newArr = new int[max];
for (int i = 0; i < max; i++)
newArr[i] = 0;
for (int i = 0; i < max; i++)
newArr[list[i]] += 1;
int mostCommon = 0;
int mostCommonMax = 0;
for (int i = 0; i < max; i++)
if (newArr[i] > mostCommonMax) {
mostCommonMax = newArr[i];
mostCommon = i;
}
return mostCommon;
}
答案 1 :(得分:0)
要将固定值传递给您的方法,您可以使用:
int[] liste = {1,2,3,4,5,6,7,8,9};
System.out.println(new MostCommonElemnt().findMostCommonElemnt(liste));
您可以使用return list[1];
方法中的findMostCommonElemnt
返回数组的第二个值,但这可能不是该方法应该做的。