【发布时间】:2017-02-21 17:23:26
【问题描述】:
正如您在此处看到的,我返回数组中最大的两个整数。
int[] a = {a1 = (int) ((Math.random() * 10) + 1), a2 = (int) ((Math.random() * 10) + 1), a3 = (int) ((Math.random() * 10) + 1), a4 = (int) ((Math.random() * 10) + 1), a5 = (int) ((Math.random() * 10) + 1)};
public static int[] showtwolargestints(int a[]) { // returns two largest integers of my array
int largestA = Integer.MIN_VALUE, largestB = Integer.MIN_VALUE;
for(int value : a) {
if(value > largestA) {
largestB = largestA;
largestA = value;
} else if (value > largestB) {
largestB = value;
}
}
return new int[] { largestA, largestB };
}
我设法在我的 GUI 类/JButton 方法的 if 语句中使用它们。
int[] twoLargest = myobject.showtwolargestints(myobject.a);
public void buttonmethod() {
try {
if (twoLargest[0] == 10 && twoLargest[1] == 10) {
// ...
} else if (twoLargest[0] == 10 && twoLargest[1] == 9) {
// ...
}
但是,我现在发现,对于我的程序,在找到这两个最大值之后,我还必须在 if 语句中使用数组的每个剩余整数。
我是初学者,我的尝试效果不佳:l 你能帮我一个简单的方法吗?
PS:我既不想对剩余的值求和(我需要每一个),也不想通过冒泡排序或某事对它们进行排序。像这样。
【问题讨论】:
-
你不能使用
myobject.a来表示“在 if 语句中使用我的数组的每个剩余整数”
标签: java arrays if-statement