import java.util.Arrays;
import java.util.Scanner;
public class TestSort {
public static void sortTest(){
System.out.println("Please input number, split with ',':");
Scanner in=new Scanner(System.in);
String readLine = in.nextLine(); //读取键盘输入的一行(以回车换行为结束输入)
String[] input = readLine.split(",");//将输入的字符串根据','划分为数组,比如12,11,43,100,333,4,55 = [12,11,43,100,333,4,55]
System.out.println("Before sort : " + Arrays.toString(input));
Arrays.sort(input);//Arrays.sort()方法是java提供的数组排序,可以直接使用
System.out.println("After sort : " + Arrays.toString(input));
}
public static void main(String...args){
sort();
}
}
追问感谢大神指点,真的是非常详细,不过一下这二者代码不是一样的么?
System.out.println("Before sort : " + Arrays.toString(input));
System.out.println("After sort : " + Arrays.toString(input));
话说我想把这段代码用private进行封装起来该如何做?
追答private Integer[] getInputArray() {
System.out.println("Please input number, split with ',':");
Scanner in=new Scanner(System.in);
String readLine = in.nextLine(); //读取键盘输入的一行(以回车换行为结束输入)
String[] inputs = readLine.split(",");
Integer[] outputs = new Integer[inputs.length];
for(int i=0; i<inputs.length; i++){//将字符串转换为整形
//注意这里我的实现是只能输入整形,如果输入的某个字符不能转换的话就会发生异常,导致程序终止
//如果你需要支持其他类型。比如浮点(小数)可以改为使用Float或者Double
outputs[i] = Integer.parseInt(inputs[i]);
}
System.out.println("您输入的数组为 : " + Arrays.toString(outputs));//注意Arrays.toString方法是java自带的将数组转换成可打印
return outputs;
}