Java 如何在主方法中调用以数组作为参数的方法?
我对Java非常陌生,正在学习数组。这里我要做的是用数组中第二大元素减去最大元素。我不需要任何代码处理方面的帮助(无论它是否正确),因为我相信一旦我在控制台中打印了数组,我就可以自己解决这个问题 然而,我遇到的问题是调用Java 如何在主方法中调用以数组作为参数的方法?,java,arrays,Java,Arrays,我对Java非常陌生,正在学习数组。这里我要做的是用数组中第二大元素减去最大元素。我不需要任何代码处理方面的帮助(无论它是否正确),因为我相信一旦我在控制台中打印了数组,我就可以自己解决这个问题 然而,我遇到的问题是调用diff方法来处理我给出的数组。代码如下: package com.Practice; import java.util.Arrays; public class Main { public static int diff(int[] a) { int larges
diff
方法来处理我给出的数组。代码如下:
package com.Practice;
import java.util.Arrays;
public class Main {
public static int diff(int[] a) {
int largest = 0;
int secLargest = 0;
for (int i = 0; i < a.length; i++) {
if (a.length < 2) {
System.out.println("Array less than 2 elements!");
}
for (int j = 0; j < a.length; j++) {
if (a[i] > a[j]) {
a[i] = largest;
largest = a[i];
}
if (a[i] < largest) {
a[i] = secLargest;
}
}
}
return largest - secLargest;
}
public static void main(String[] args) {
int[] arr = {22, 3, 2, 55, 34, 56, 34, 123, 56, 34, 21, 5, 65};
System.out.println("Original Array of numbers = " + Arrays.toString(arr));
// How do get the diff() method to work through the array given above down below?
for (int i = 0; i < arr.length; i++) {
System.out.println(diff(arr[]);
}
}
package.com.Practice;
导入java.util.array;
公共班机{
公共静态int diff(int[]a){
int最大=0;
int=0;
for(int i=0;ia[j]){
a[i]=最大;
最大值=a[i];
}
如果(a[i]<最大值){
a[i]=秒;
}
}
}
返回最大-秒最大;
}
公共静态void main(字符串[]args){
int[]arr={22,3,2,55,34,56,34,123,56,34,21,5,65};
System.out.println(“原始数字数组=“+Arrays.toString(arr));
//如何让diff()方法在上面给出的数组中工作?
对于(int i=0;i
}
我将非常感谢你的帮助
谢谢。您应该在没有
[]
的情况下通过数组,您缺少一个)
:
for(int i=0;i
而不是:
for (int i = 0; i < arr.length; i++) {
System.out.println(diff(arr[]);
}
for(int i=0;i
只需在arr
之后删除[]
:System.out.println(diff(arr));
您几乎拥有了它。它应该是:System.out.println(diff(arr));
@CodeMatrix是的,而且它缺少了一个)谢谢大家。现在这是有道理的。谢谢你的帮助!
for (int i = 0; i < arr.length; i++) {
System.out.println(diff(arr[]);
}