BufferedReader用法:
注意:使用前要在main()方法后加抛出异常:throws IOException
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
input.readLine();//将所有输入数据存到缓冲区
String str[] = input.readLine().split("\\s");//缓冲区数据用空格分隔存储
附:BufferedReader类位于java.io包中,BufferedReader. readLine()方法会返回用户在按下Enter键之前的所有字符输入,不包括最后按下的Enter返回字符.
import java.util.*;
import java.io.*;
import java.math.BigInteger;
public class Main{
//throws IOException是Java中的throws语句。
//throws是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常)
//throw(没有s)是在程序运行时碰到非正常情况手动抛出的异常对象,告知方法内部运行碰到非正常情况。
//throws(有s) IOException是对方法内部要抛出的异常的一种声明,告知方法的调用者这个方法可能会抛出的异常,让调用这可以用try{}catch{}方法体进行异常捕获,方便处理。
//另外,IOException是读写异常,通常发生在流,文件的读写过程中。
public static void main(String[] args) throws IOException {
BufferedReader sc = new BufferedReader(new InputStreamReader(System.in));
String s;
while((s=sc.readLine())!=null){
//超时=======!
BigInteger d = new BigInteger(s,16);
System.out.println(String.format("%o", d));
}
}
}
//InputStream : 是所有字节输入流的超类,一般使用它的子类:FileInputStream等,它能输出字节流;
//InputStreamReader : 是字节流与字符流之间的桥梁,能将字节流输出为字符流,并且能为字节流指定字符集,可输出一个个的字符;
//BufferedReader : 提供通用的缓冲方式文本读取,readLine读取一个文本行, 从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取。
//在读取网络数据流的时候,可以先通过用InputStream获取字节流、InputStreamReader将字节流转化成字符流、BufferedReader将字符流以缓存形式输出的方式来快速获取网络数据流。