展开全部
由于不知道具体有e69da5e6ba903231313335323631343130323136353331333337623366几个整数,总体来说有两种方法,第一种是读取一行,然后把这一行输入转成数组。第二种方法是读到某个标志位(比如-1)结束。代码如下:import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.io.IOException;
public class BasicInput {
public static void main(String[] args) {
//int[] arr = readLine(); //方法一
int[] arr = readToFlag();//方法二
Arrays.sort(arr);
for(int i=0;i
System.out.print(arr[i]+" ");
}
System.out.println();
}
public static int[] readLine(){
String str = "";
try {
System.out.println("属于一行整数,中间用空格隔开。");
// 在Java当中,用户输入要通过InputStream(输入流)来获取。
// System.in就是系统的输入流。缺省情况下这个输入流连接到控制台(命令行)。
// InputStreamReader就是用来读取InputStream的类。
InputStreamReader is_reader = new InputStreamReader(System.in);
// 通常使用BufferedReader来读取InputStream中的字符串内容。
// BufferedReader可以一次读取一行。
str = new BufferedReader(is_reader).readLine();
is_reader.close();
} catch (IOException e) {
e.printStackTrace();
}
String [] strArr = str.split(" ");
int [] arr = new int [strArr.length];
for(int i=0;i
arr[i] = Integer.parseInt(strArr[i]);
}
return arr;
}
public static int[] readToFlag(){
List list = new ArrayList();
Scanner input=new Scanner(System.in);
System.out.println("请输入多个数值,输入-1表示输入结束");
int tmp=input.nextInt();//输入一个正整数
while(tmp!=-1){
list.add(tmp);
tmp=input.nextInt();
}
input.close();
int [] arr = new int [list.size()];
for(int i=0;i
arr[i] = list.get(i);
}
return arr;
}
}