将nextInt与数组一起使用(从java开始)
对于编程任务,我们必须创建执行不同任务的数组方法。 对于这个,我必须返回数组中第二大的元素 下面是我的方法主体。值[i]=values.nextInt()出现错误;一行写着“不能在数组类型int[]上调用nextInt()”,其余部分应该可以正常工作(据我所知..我没有其他错误,但我还没有测试过)。关于如何修复nextInt错误,有什么想法吗 谢谢将nextInt与数组一起使用(从java开始),java,arrays,Java,Arrays,对于编程任务,我们必须创建执行不同任务的数组方法。 对于这个,我必须返回数组中第二大的元素 下面是我的方法主体。值[i]=values.nextInt()出现错误;一行写着“不能在数组类型int[]上调用nextInt()”,其余部分应该可以正常工作(据我所知..我没有其他错误,但我还没有测试过)。关于如何修复nextInt错误,有什么想法吗 谢谢 public int returnSecondLargest(){ int secondLargest = Integer.MI
public int returnSecondLargest(){
int secondLargest = Integer.MIN_VALUE;
int largest = Integer.MIN_VALUE;
for (int i = 0; i < values.length; i++) {
values[i] = values.nextInt();
if (largest < values[i]) {
secondLargest = largest;
largest = values[i];
}
if (secondLargest < values[i] && largest != values[i])
secondLargest = values[i];
}
return secondLargest;
}
public int returns第二大(){
int secondmaxist=整数.MIN_值;
int最大=整数.MIN_值;
对于(int i=0;i
简单地说,值是一个数组(不是数组类)。它没有像nextInt这样的方法
数组是一个容器对象,它包含固定数量的
单一类型。数组的长度是在创建数组时确定的
创造
我喜欢将其视为一种基本类型(不是),因为数组和基本类型都没有方法来操作它们,而是有类/对象,其中包含可以操作的方法
返回第二个最大值的方法可以通过删除该行来实现,我不知道为什么会有它。public int returnSecondMaximum(){
public int returnSecondLargest(){
int secondLargest = Integer.MIN_VALUE;
int largest = Integer.MIN_VALUE;
for (int i = 0; i < values.length; i++) {
if(values[i] > values[i+1]){
int temp = values[i];
values[i] =values[i + 1];
values[i+1] = temp;
}
}
return values[values.length - 2];
}
int secondmaxist=整数.MIN_值;
int最大=整数.MIN_值;
对于(int i=0;i值[i+1]){
int temp=值[i];
值[i]=值[i+1];
数值[i+1]=温度;
}
}
返回值[values.length-2];
}
您可以使用Arrays类对数组进行排序。在本例中,它将是一个升序,所以您希望数组中的第二个到最后一个,这就是为什么我调用了array-array.length-2上的索引。如果我调用了array.length-1,您将只得到数组中最大的最后一个索引。使用此方法,您只需将数组传递到参数中
public int secondLargest(int[] array){
Arrays.sort(array);
return array[array.length-2];
}
这很有效,谢谢!我只是取出了最大的2&3行,因为它们不需要,我用int-temp替换了它;