输入数据时都要进行异常处理
import java.io.IOException;
1:system.in
//程序读入一组数(大小是5),后面长度大小随便,找到第二大的数,并输出
/*int size = 5;
int[] array = new int[5];
for (int i = 0 ; i < 5 ; i ++ )
{
array[i] = System.in.read();
System.out.println("it is " + array[i] );
}
上面的read方法什么符号都读进来,\r\n也是。所以控制台用起来不方便,但是在读入文件的时候有用
Arrays.sort(array);
System.out.print("a\rb");System.out.print("a\r\nb");
System.out.println(array[3]);
2:system.Console:import java.io.Console;
System.out.println("please input");
//console 在IDE如eclipse等工具中不能输出,cs = null,因为它是调用系统的输入输出java环境的,所以不能用
Console cs = System.console();
if (cs == null) {
throw new IllegalStateException("can not use console");
}
System.out.println(cs.readLine());
3:Scanner:import java.util.Scanner;
//scanner记住的函数hasNext()和next()来读取
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
int[] array = new int[5];
for (int i = 0 ; i < 5 ; i ++ )
{
array[i] = Integer.valueOf(sc.next());
}
int largest, slarge;
largest = slarge = array[0];
for (int i = 1; i < 5 ; i ++ )
{
if( array[i] > largest )
{
slarge = largest;
largest = array[i];
}
else if( array[i] < largest && array[i] > slarge)
{
slarge = array[i];
}
else if( largest == slarge)
{
slarge = array[i];
}
}
System.out.println(slarge);
}
Scanner也有nextInt() ; nextFloat()和nextBoolean()函数
4:BufferReader
可以连续读入一行,终于找到了...
import java.util.*;
import java.io.IOException;
import java.io.*;
import java.util.Scanner;
public class BufferedReaderTest
{
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String temp = in.readLine();
String [] a = temp.split("2");
for (int i =0 ; i < a.length; i ++ )
{
System.out.println(a[i]);
}
}
}