1 BufferedReader
BufferedReader 在处理大量数据的时候比Scanner高效,下面看基本写法:
import java.util.*; import java.io.*; public class Main{ public static void main(String[] args){ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));//一般直接System.out int a = Integer.parseInt(bf.readLine()); String b = bf.readLine(); long c = Long.parseLong(bf.readLine()); Double d = Double.parseDouble(bf.readLine()); } }读取字符串直接readLine,别的类型要转一下
2 StringTokenizer
基本用于跳跃字符比如1/2/3/4/5,我想读取12345,就可以用这个
import java.util.*; import java.io.*; public class Main{ public static void main(String[] args)throws Exception{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); String str = "1/2/3/4/5"; StringTokenizer st = new StringTokenizer(str,"/"); while(st.hasMoreTokens()){ System.out.print(st.nextToken()); } } }3 比赛简单模版
import java.io.*; import java.util.*; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static String next() throws Exception { while (st == null || !st.hasMoreTokens()) st = new StringTokenizer(br.readLine()); return st.nextToken(); } static int nextInt() throws Exception { return Integer.parseInt(next()); } static long nextLong() throws Exception { return Long.parseLong(next()); } static String nextLine() throws Exception { return br.readLine(); } public static void main(String[] args) throws Exception { // 在这里写题解 } }背就完了,考试时候大数据无脑写