我试图找到数组int []次的最短时间分钟,但我无法弄清楚如何使第二种方法有效;我没有得到任何输出。
public static void main(String[] arguments) {
String[] names = { "Elena", "Thomas", "Hamilton", "Suzie", "Phil",
"Matt", "Alex", "Emma", "John", "James", "Emily", "Daniel",
"Neda", "Aaron", "Kate" };
int[] times = { 321, 273, 278, 329, 445, 402, 388, 275, 243, 334, 412,
393, 299, 343, 317, 265 };
for (int i = 0; i < names.length; i++)
System.out.println(names[i] + ":" + times[i]);
}
我不知道它遗失了什么,但我知道我应该在几分钟内获得最低时间:这是243(int []次)。我相信&#34;我需要将int时间值从第一个方法传递给第二个方法...因为我觉得第二个方法数组是空的。但是,我不知道该怎么做。救命?
public static int getMinIndex(int[] values) {
int minValue = Integer.MAX_VALUE;
int minIndex = -1;
for (int i = 0; i < values.length; i++)
if (values[i] < minValue) {
minValue = values[i];
minIndex = i;
}
return minIndex; //not returning anything.
}
答案 0 :(得分:0)
将此内容写入主要方法
int min_index = getMinIndex(times);
你忘了打电话给方法。这里min_index
包含您必须从方法返回的整数值。
答案 1 :(得分:0)
首先,我建议你真的想要getMinValue(int... arr)
public static int getMinValue(int... values) {
// Handle null and the empty array
if (values == null || values.length < 1) {
return -1;
}
// start at the first element
int minValue = values[0];
for (int i = 1; i < values.length; i++) {
if (values[i] < minValue) {
minValue = values[i];
}
}
// return the minimum value
return minValue;
}
然后你会用
来调用它public static void main(String[] args) {
System.out.println(getMinValue(4, 0, 2, 3));
int[] arr = { 5, 6, 7, 8, 3, 2 };
System.out.println(getMinValue(arr));
}
输出
0
2
答案 2 :(得分:0)
您的计划的逻辑是: 1.声明一系列名称。 2.声明一系列次数。 3.通过循环将名称和时间写入控制台。
您还编写了一个方法来检索int数组中的最小值, 但是你没有在你的程序中包含它,它从main方法的第一行开始。
所以第一个问题是,你想在哪里使用最小值。 第二个问题是,你想用最小值做什么。
假设您要在控制台上显示最小值, 简单地写一下:
System.out.println(getMinValue(times));
这样,方法的返回值作为参数传递给System.out的静态方法,假设你想做其他事情,把它传递给另一个接受int数组的方法。