编程语言
首页 > 编程语言> > [算法]-Java输入输出流快读快写

[算法]-Java输入输出流快读快写

作者:互联网

使用java.io中的StreamTokenizer + StringBuilder进行快读快写。

import java.io.*;

public class FastIO{
    private static final StreamTokenizer in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
    private static final PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out)));
    private static final StringBuilder build = new StringBuilder();

    public static void main(String[] args) throws Exception {

        // 结果计算完成后,通过执行build.append(xxx)来构造最终输出字符串

        out.println(build);
        out.flush();
    }

    // 对StreamTokenzier类的简单封装
    public static int nextInt() throws Exception {
        in.nextToken();
        return (int) in.nval;
    }

    public static long nextLong() throws Exception {
        in.nextToken();
        return (long) in.nval;
    }

    public static double nextDouble() throws Exception {
        in.nextToken();
        return in.nval;
    }

    public static String next() throws Exception {
        in.nextToken();
        return in.sval;
    }
}

StreamTokenizer读取速度快于Scanner。将结果通过StringBuilderappend()方法进行保存,最后通过使用PrintWriterSystem.out.println一次性输出,输出速度快于调用多次System.out.println

标签:Exception,Java,流快,throws,static,读快,new,public,out
来源: https://www.cnblogs.com/kelincxm/p/16364990.html