ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java 快速读入

2022-01-08 12:04:17  阅读:110  来源: 互联网

标签:Java return static 读入 使用 new 快速 public


使用Java.io.StreamTokenizer 类。一些方法可以参考此链接

先给出快速I/O模板:

public static StreamTokenizer in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in),32768));
    public static PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));

    public static double nextDouble() throws IOException{ in.nextToken(); return in.nval; }
    public static float nextFloat() throws IOException{ in.nextToken(); return (float)in.nval; }
    public static int nextInt() throws IOException{ in.nextToken(); return (int)in.nval; }
    public static String next() throws IOException{ in.nextToken(); return in.sval; }

使用示例:

使用该读入方式时出现如下问题:

即当读入的字符串以数字开始就导致读入为空。解决办法如下:

注意,如果使用了上述解决方法后,如果调用nextInt()方法,会出现以下结果:

如果想重置上述解决方案带来的问题,可以使用如下方式:

即对in重新初始化。

或者使用Integer.parseInteger(next())的方式读入int类型的整数。

针对上述问题,在使用时注意取舍,在需要的时候再使用ordinaryChars方法和wordChars方法。如果在使用中遇到其他不能读入的字符如'\',也可使用上述方法进行添加,该方法的添加不会覆盖前面已经添加的。
即可以这样写:

注意到我们前面的模板中没有long类型的读取方法,在通过上述的处理之后,我们可以使用Long.parseLong(next())的方式来读取long类型的数字。

标签:Java,return,static,读入,使用,new,快速,public
来源: https://www.cnblogs.com/cherish-/p/15777860.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有