黑马程序员技术交流社区

标题: 最近刚学的Scanner类,试一下~“将键盘输入数据存入数组并... [打印本页]

作者: HwH199209    时间: 2015-8-8 20:43
标题: 最近刚学的Scanner类,试一下~“将键盘输入数据存入数组并...
/*
主目标:将键盘输入的数存入数组,并排序。
思路:
A、需要用循环语句逐次让键盘输入数据。
B、要有容器对输入数据做存储。
C、要定义一个排序方法,对收集到的数据进行排序。
D、需要一个遍历输出方法
实现:
1、调用Scanner类中的nextInt()方法。(建对象,并调用方法)
2、建立一个数组(一维数组)容器,用for循环一次存储键盘输入数值。
3、创建一个工具类Tools。
4、在Tools类中创建冒泡排序方法、遍历输出方法、交换位置方法(private私有)。
*/
import java.util.Scanner;
class HappyDemo{
        public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int[] arr = new int[6];
        for (int x = 0;x<6 ;x++ ){
                arr[x] = s.nextInt();
                }
        Tools.bubbleSort(arr);
        Tools.printArray(arr);
        }
}

class Tools{

        public static void printArray(int[] arr){
                System.out.print("[");
                for (int x=0 ;x<arr.length ;x++ ){
                        if(x!=arr.length-1){
                                System.out.print(arr[x]+",");
                        }
                        else
                                System.out.print(arr[x]+"]");
                        }
        }

        public static void bubbleSort(int[] arr){
                for (int x=0;x<arr.length-1 ;x++ ){
                        for(int y=0; y<arr.length-1-x;y++){
                                if(arr[y]>arr[y+1])
                                swap(arr,y,y+1);
                       
                        }
                }
        }

        private static void swap(int[] arr,int a,int b){
                arr[a] = arr[a]^arr[b];
                arr[b] = arr[a]^arr[b];
                arr[a] = arr[a]^arr[b];
        }
}
希望大家给点创意的点子和想法,让数据变得有趣~~~轻喷啊{:2_30:}
作者: cl99025    时间: 2015-8-8 22:35
顶起来。。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2