详解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加快读写数据速度内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Springboot 整合 Java DL4J 实现医学影像诊断功能介绍
本文介绍如何利用SpringBoot整合Java Deeplearning4j实现医学影像诊断功能,重点介绍了卷积神经网络在处理医学影像中的应用,以及如何进行数据预处理、模型构建、训练与预测,提供了详细的代码实现和单元测试方法,目的是辅助医生更准确快速地进行疾病诊断2024-10-10
Maven项目引用第三方jar包找不到类ClassNotFoundException
这篇文章主要为大家介绍了Maven项目引用第三方jar包找不到类ClassNotFoundException解决及原因分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-07-07
SpringBoot和Springfox(Swagger)版本不兼容的解决方案
documentationPluginsBootstrapper这个 bean 无法正常启动,原因是遇到了空指针异常(NullPointerException),这通常是由于 Spring Boot 和 Springfox 的版本不兼容导致的路径匹配策略冲突,本文给大家介绍了SpringBoot和Springfox(Swagger)版本不兼容的解决方案2024-12-12


最新评论