【发布时间】:2018-07-30 19:52:05
【问题描述】:
我要做的是从用户那里获取一组数字,控制台将打印出英语第二高的数字和西班牙语第二低的数字。
首先,我试图从用户那里获取输入,将其放入一个数组中并获取组件的第二高和第二低的值。但我不知道如何获取我需要的。
public static void main(String[] args) {
//get the length from user
int length;
Scanner input = new Scanner(System.in);
System.out.println("How many variables are you going to enter?: ");
length = input.nextInt();
//allocate array for that length
int[] variables = new int[length];
for(int counter = 0; counter < length; counter++) {
System.out.println("Enter variable: ");
variables[counter] = input.nextInt();
}
input.close();
//print the variables
System.out.println("Your variables are");
for(int counter = 0; counter < length; counter++) {
System.out.println(variables[counter]);
}
}
【问题讨论】:
-
旁注:您现在正在关闭 System.in。
-
您需要对数组进行排序,然后从中获取 sortedArray[1] 和 sortedArray[length-1] 元素。
-
@MindaugasNakrošis 排序后的操作比事先进行排序更昂贵。他应该在获取数字时确定最小值/最大值或对其进行排序。
标签: java arrays eclipse input keyboard