首页 > 代码库 > 如何从键盘录入数据调用排序算法排序?
如何从键盘录入数据调用排序算法排序?
如何从键盘录入数据调用排序算法排序?
|--如何从键盘录入数据
|--如何用冒泡法排序
源代码如下(详细的注释如下):
import java.util.ArrayList;
import java.util.Scanner;// 定义键盘输入数据类
public class KeyboardInputData {
public static void main(String[] args) {
//提示从控制台输入数据,因为while(Scanner.hasNext())无法跳出循环,所以选用while(Scanner.hasNextInt()),遇到输入的数据不是int型时就跳出循环,所以最后以over结束。
System.out.print("请输入数字,并以空格隔开,输完之后以over结束:");
//定义扫描器,扫描从键盘录入的数据
Scanner scanner = new Scanner(System.in);
//定义arrayList 存放录入的数据。这里定义一个数组存放不方便,不知道数组多大,而且在while循环中数组的下标值无法自增,故无法利用循环把数据存入数组,而集合框架有这一功能。
ArrayList<Integer> arrayList = new ArrayList<Integer>();
//把扫描到的数据存入到arrayList.中
while(scanner.hasNextInt()){arrayList.add(new Integer(scanner.nextInt()));
}
//查看输入的数据的个数
System.out.println("输入的数据个数为:"+arrayList.size());
//定义一个大小合适的数组存放输入的数据
int[] a=new int[arrayList.size()];//打印数组以显示录入的数据
for (int i = 0; i < a.length; i++) {
a[i]=arrayList.get(i).intValue();
System.out.print(a[i]+" ");
}
System.out.println();
//调用冒泡排序算法排序录入的数据
bubbleSort(a);//打印出排序后的录入数据
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]+" ");
}
}
//定义冒泡排序方法
public static void bubbleSort(int[] arr){//小到大的冒泡排序int temp = 0;
for(int i = 0;i<arr.length;i++){
for(int j = i;j<arr.length;j++){
if(arr[i]>arr[j]){
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。