詳解Java編寫(xiě)算法時(shí)如何加快讀寫(xiě)數(shù)據(jù)速度
前言
對(duì)于解決該方法我們一般如下操作,不需要知道為什么,有模板(個(gè)人觀點(diǎn))
使用BufferedReader代替Scanner:Scanner類在讀取大量輸入時(shí)性能較差,而B(niǎo)ufferedReader具有更高的讀取速度??梢允褂肂ufferedReader的readLine()方法逐行讀取輸入數(shù)據(jù)。
使用StringTokenizer:StringTokenizer是一個(gè)用于分割字符串的工具類,相比正則表達(dá)式或者String的split()方法,它具有更高的執(zhí)行效率??梢允褂肧tringTokenizer來(lái)分割輸入數(shù)據(jù)。
一、讀取基本數(shù)據(jù)類型
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)以回車為結(jié)束符
注意這個(gè)讀取字符串是以回車結(jié)尾的,遇到空格也是會(huì)讀進(jìn)去的
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)以空格為結(jié)束符
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);
}
}

到此這篇關(guān)于詳解Java編寫(xiě)算法時(shí)如何加快讀寫(xiě)數(shù)據(jù)速度的文章就介紹到這了,更多相關(guān)Java加快讀寫(xiě)數(shù)據(jù)速度內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot 整合 Java DL4J 實(shí)現(xiàn)醫(yī)學(xué)影像診斷功能介紹
本文介紹如何利用SpringBoot整合Java Deeplearning4j實(shí)現(xiàn)醫(yī)學(xué)影像診斷功能,重點(diǎn)介紹了卷積神經(jīng)網(wǎng)絡(luò)在處理醫(yī)學(xué)影像中的應(yīng)用,以及如何進(jìn)行數(shù)據(jù)預(yù)處理、模型構(gòu)建、訓(xùn)練與預(yù)測(cè),提供了詳細(xì)的代碼實(shí)現(xiàn)和單元測(cè)試方法,目的是輔助醫(yī)生更準(zhǔn)確快速地進(jìn)行疾病診斷2024-10-10
Maven項(xiàng)目引用第三方j(luò)ar包找不到類ClassNotFoundException
這篇文章主要為大家介紹了Maven項(xiàng)目引用第三方j(luò)ar包找不到類ClassNotFoundException解決及原因分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
Spring Boot 的創(chuàng)建和運(yùn)行示例代碼詳解
Spring Boot 的誕生是為了簡(jiǎn)化Spring程序的開(kāi)發(fā),今天給大家介紹下Spring Boot 的創(chuàng)建和運(yùn)行,主要包括Spring Boot基本概念和springboot優(yōu)點(diǎn),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-07-07
SpringBoot和Springfox(Swagger)版本不兼容的解決方案
documentationPluginsBootstrapper這個(gè) bean 無(wú)法正常啟動(dòng),原因是遇到了空指針異常(NullPointerException),這通常是由于 Spring Boot 和 Springfox 的版本不兼容導(dǎo)致的路徑匹配策略沖突,本文給大家介紹了SpringBoot和Springfox(Swagger)版本不兼容的解決方案2024-12-12
springboot集成fastDfs過(guò)程代碼實(shí)例
這篇文章主要介紹了springboot集成fastDfs過(guò)程代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
SpringBoot實(shí)現(xiàn)調(diào)用自定義的應(yīng)用程序((最新推薦)
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)調(diào)用自定義的應(yīng)用程序的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-06-06
rabbitmq五種模式詳解(含實(shí)現(xiàn)代碼)
這篇文章主要介紹了rabbitmq五種模式詳解(含實(shí)現(xiàn)代碼),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04

