Java的扫描仪输出数组值和输出后排序基法 [英] Java scanner output array values and output after sort methed

查看:233
本文介绍了Java的扫描仪输出数组值和输出后排序基法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有其他的code的输出值,如最小值,最大值和平均值。我看不出在有序阵列,通过扫描仪,用户输入如何输出值。

 进口java.util.Scanner中;公共类Arrayassignment {    公共静态无效的主要(字串[] args){
        扫描仪键盘=新的扫描仪(System.in);
        的System.out.println(数组大小输入intiger。);
        INT数= keyboard.nextInt();
        int数组[] =新INT [数字];
        的System.out.println(数组大小+数字+启动\\ n);
        的System.out.println(现在输入数组intigers。);
        对于(INT指数= 0;指数 - LT;数;指数++)
        {
            数组[索引] = keyboard.nextInt();
        }
        keyboard.close();        的System.out.println(排序);
          排序(数组);
    }    公共静态无效的排序(INT [] ARG){
        INT安排;
        的for(int i = 0; I< arg.length - 1;我++)
            对于(INT J = I + 1; J< arg.length; J ++){
                如果(ARG [I]> ARG [J]){
                    安排= ARG [I]
                    ARG [I] = ARG [J]。
                    ARG [J] =安排;
                    的System.out.println(安排);
                }
            }
        }
    }
}


解决方案

现在的问题是有点不清楚。我想你想要的是输出和打印排序后的数组。

 进口java.util.Scanner中;
进口java.util.Arrays中;公共类Arrayassignment {    公共静态无效的主要(字串[] args){
        扫描仪键盘=新的扫描仪(System.in);
        的System.out.println(数组大小输入intiger。);
        INT数= keyboard.nextInt();
        int数组[] =新INT [数字];
        的System.out.println(数组大小+数字+启动\\ n);
        的System.out.println(现在输入数组intigers。);
        对于(INT指数= 0;指数 - LT;数;指数++)
        {
            数组[索引] = keyboard.nextInt();
        }
        keyboard.close();        的System.out.println(排序);
        //调用sort mthod并获得返回的有序阵列
        INT [] = sortedArray排序(数组);        //打印排序后的数组
        的System.out.println(Arrays.toString(sortedArray));    }    公共静态INT []排序(INT [] ARG){
        INT安排;
        的for(int i = 0; I< arg.length - 1;我++){
            对于(INT J = I + 1; J< arg.length; J ++){
                如果(ARG [I]> ARG [J]){
                    安排= ARG [I]
                    ARG [I] = ARG [J]。
                    ARG [J] =安排;
                }
            }
        }
        //返回数组排序
        返回ARG;
    }
}

I have other code that outputs values such as min, max and average. I don't see how to output values in sorted arrays that user inputs through scanner.

import java.util.Scanner;

public class Arrayassignment {

    public static void main(String[] args) {
        Scanner keyboard=new Scanner(System.in);
        System.out.println("Enter an intiger for array size.");
        int number= keyboard.nextInt();
        int array[]=new int[number];
        System.out.println("Array size " + number + " initiated.\n");
        System.out.println("Now enter the array intigers.");
        for (int index = 0; index < number; index++)
        {  
            array[index]=keyboard.nextInt();
        }
        keyboard.close();

        System.out.println ( "Sorting " );
          sort(array);
    }

    public static void sort(int[] arg) {
        int arrange;
        for (int i = 0; i < arg.length - 1; i++)
            for (int j = i + 1; j < arg.length; j++) {
                if (arg[i] > arg[j]) {
                    arrange = arg[i];
                    arg[i] = arg[j];
                    arg[j] = arrange;
                    System.out.println( arrange);
                }
            }
        }        
    }
}

解决方案

The question is bit unclear. I think what you want is to output and print the sorted array.

import java.util.Scanner;
import java.util.Arrays;

public class Arrayassignment {

    public static void main(String[] args) {
        Scanner keyboard=new Scanner(System.in);
        System.out.println("Enter an intiger for array size.");
        int number= keyboard.nextInt();
        int array[]=new int[number];
        System.out.println("Array size " + number + " initiated.\n");
        System.out.println("Now enter the array intigers.");
        for (int index = 0; index < number; index++)
        {  
            array[index]=keyboard.nextInt();
        }
        keyboard.close();

        System.out.println ( "Sorting " );
        //call the sort mthod and get the returned sorted array
        int[] sortedArray=sort(array);

        //printing the sorted array
        System.out.println(Arrays.toString(sortedArray));

    }

    public static int[] sort(int[] arg) {
        int arrange;
        for (int i = 0; i < arg.length - 1; i++){
            for (int j = i + 1; j < arg.length; j++) {
                if (arg[i] > arg[j]) {
                    arrange = arg[i];
                    arg[i] = arg[j];
                    arg[j] = arrange;
                }
            }
        }
        //return the sorted array
        return arg;        
    }
}

这篇关于Java的扫描仪输出数组值和输出后排序基法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆