详解Java编写算法时如何加快读写数据速度
前言
对于解决该方法我们一般如下操作,不需要知道为什么,有模板(个人观点)
使用BufferedReader代替Scanner:Scanner类在读取大量输入时性能较差,而BufferedReader具有更高的读取速度。可以使用BufferedReader的readLine()方法逐行读取输入数据。
使用StringTokenizer:StringTokenizer是一个用于分割字符串的工具类,相比正则表达式或者String的split()方法,它具有更高的执行效率。可以使用StringTokenizer来分割输入数据。
一、读取基本数据类型
import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st=new StringTokenizer(br.readLine()); int n=Integer.parseInt(st.nextToken()); long m=Long.parseLong(st.nextToken()); System.out.print("n="+n+" m="+m); } }
二、String类型
(1)以回车为结束符
注意这个读取字符串是以回车结尾的,遇到空格也是会读进去的
import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); String s1=br.readLine(); String s2=br.readLine(); System.out.print("s1="+s1+" s2="+s2); } }
(2)以空格为结束符
import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); String s1 = st.nextToken(); String s2 = st.nextToken(); System.out.println("s1=" + s1 + " s2=" + s2); } }
到此这篇关于详解Java编写算法时如何加快读写数据速度的文章就介绍到这了,更多相关Java加快读写数据速度内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
MyBatis开发Dao层的两种方式实现(原始Dao层开发)
这篇文章主要介绍了MyBatis开发Dao层的两种方式实现(原始Dao层开发),并对数据库进行增删查改,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-12-12Windows下使用IDEA搭建Hadoop开发环境的详细方法
这篇文章主要介绍了Windows下使用IDEA搭建Hadoop开发环境,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-12-12springmvc处理模型数据ModelAndView过程详解
这篇文章主要介绍了springmvc处理模型数据ModelAndView过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-01-01
最新评论