【发布时间】:2016-08-21 00:40:05
【问题描述】:
这是我目前所拥有的
double[] num = {1.9, 2.9, 3.4, 3.5};
double max = num [0];
for (int i = 1 ; i < num.length ; i++)
{
if (num [i] > max)
max = num [i];
}
System.out.println ("Max is " + max);
我需要找到最大值的索引。我尝试通过在 if 语句中放置一个句子来打印索引,我还尝试通过将 i 存储到另一个变量中。他们都没有工作。
【问题讨论】:
-
为什么
num和[i]之间有一个空格?也许这就是它的原因。你是编译错误还是什么? -
@Gendarme 不,空间不会造成任何问题。问题不在于数组,我只需要找到一种方法来输出最大值的索引。
-
所以,您想要最大条目的 index,并且您将 [i] 的 value 存储到 max 变量中。也许考虑设置一个`int idx = 0
, and then in the loop instead ofmax = num[i]`,将idx设置为num[i]? -
空格不会引起任何问题,但最好不要放置额外的空格。您需要从 i=0 开始,而不是 i=1,因为数组索引从 0 开始,而不是 1。
-
@Gremash 没有必要从 0 开始。
max = num[0];负责。