下面是我正在处理的代码片段,我的目标是使用预定义的java方法从列表中找到最大的值。
import java.util.*;
public class Test {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("Enter a list of integers: ");
int array[] = new int[10];
for (int i = 0; i < array.length; i++) {
array[i] = s.nextInt();
}
for (int j = 0; j < array.length; j++) {
if (j < array.length) {
int maximum = Math.max(array[j], array[j + 1]);
}
}
System.out.println("Largest number of the list: " + maximum);
}
}
我得到的错误如下:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
maximum cannot be resolved to a variable
我希望有人能帮我解决这个问题。
4条答案
按热度按时间tcomlyy61#
你可以用
IntStream.max()
方法来查找流的最大元素int
基本体:你可以用
Stream.max(Comparator)
方法来查找流的最大元素Integer
物体:另请参见:
•如何在二维数组中找到前5个最大值?
•java中的数组选择排序
xlpyo6sf2#
如上所述,注意变量范围:
hpcdzsge3#
您可以迭代数字数组并跟踪所看到的最大值:
注意:上面的代码段假设输入数组中至少有一个数字。
vngu2lb84#
在for循环块内定义最大变量,使其成为局部变量,然后尝试在其定义块外访问该变量的值,这就是为什么java找不到这样的变量,因为它在该范围内不存在。试试这个:
请尝试阅读此链接以获取有关作用域和变量的进一步解释。