gpt4 book ai didi

Java数组循环方法返回数组中的最后一个值

转载 作者:行者123 更新时间:2023-11-30 06:44:29 24 4
gpt4 key购买 nike

我正在制作一个程序,以确定谁在马拉松比赛中跑得最快,这是一组时间和一个相应的名字。为了使它们匹配,我返回最短时间的索引而不是索引的值。当我返回索引的值而不是索引时,它返回正确的名称和时间,但是,当返回索引时,它返回两个数组中的最后一个值。

package Lec3;

public class Marathon
{
public static void main (String[] arguments)
{
String[] names =
{
"Elena", "Thomas", "Hamilton", "Suzie", "Phil", "Matt", "Alex",
"Emma", "John", "James", "Jane", "Emily", "Daniel", "Neda",
"Aaron", "Kate"
};

int[] times =
{
341, 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]);
}

int key = firstPlace(times, names);

System.out.println("In first place is " + names[key] + " with a time of " + times[key] + " minutes!");

}

public static int firstPlace(int[] time, String[] names)
{
int i;
int bestTime = 1000;
int firstValue = 0;

for(i = 0; i < time.length; i++)
{
if(time[i] < bestTime)
{
firstValue = i;
}
}
return firstValue;
}
}

最佳答案

for(i = 0; i < time.length; i++)
{
if(time[i] < bestTime)
{
firstValue = i;
}
}

在此循环中,您不会更新 bestTime,因此所有时间都与 1000 的初始值进行比较。它们都变小了,导致最后一个获胜。

关于Java数组循环方法返回数组中的最后一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50381775/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com