java程序:设计一个方法,该方法有形参,实现对话框输入10个元素的的数组,并排序,输出排序前后的结果。此方法需要在主函数中调用。注意:排序方法用选择排序。
时间: 2024-09-23 21:07:28 浏览: 29
将两个有序数组,合并成另一个有序的数组,升序
在Java中,你可以设计一个名为`sortArray`的方法,通过接收一个整数类型的数组作为参数,然后使用选择排序算法对其进行排序。以下是相应的代码示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 调用 sortArray 方法,传入10个未排序的整数
int[] array = getUnsortedArray(10);
System.out.println("原始数组: ");
printArray(array);
// 对数组进行排序
sortArray(array);
// 输出排序后的数组
System.out.println("\n排序后的数组: ");
printArray(array);
}
// 方法用于获取10个用户输入的整数并存入数组
public static int[] getUnsortedArray(int size) {
Scanner scanner = new Scanner(System.in);
int[] array = new int[size];
for (int i = 0; i < size; i++) {
System.out.print("请输入第 " + (i+1) + " 个元素: ");
array[i] = scanner.nextInt();
}
scanner.close();
return array;
}
// 选择排序方法,对数组进行升序排列
public static void sortArray(int[] array) {
for (int i = 0; i < array.length - 1; i++) {
int minIndex = i;
for (int j = i + 1; j < array.length; j++) {
if (array[j] < array[minIndex]) {
minIndex = j;
}
}
// 将找到的最小值与当前位置交换
int temp = array[minIndex];
array[minIndex] = array[i];
array[i] = temp;
}
}
// 打印数组方法
private static void printArray(int[] arr) {
for (int num : arr) {
System.out.print(num + " ");
}
System.out.println();
}
}
```
在这个程序中,`main`函数首先调用`getUnsortedArray`获取用户输入的10个元素,然后将数组传递给`sortArray`进行排序,最后打印出排序前后数组的内容。选择排序在内部完成。运行这个程序,会提示用户依次输入10个数字,然后显示排序后的结果。
阅读全文