天天看點

Java IO學習9:BufferedReader和Scanner

如果想要接收任意長度的資料,而且避免亂碼産生,就可以使用BufferedReader類

public class BufferedReader extends Reader

因為輸入的資料有可能出現中文,是以,此處使用字元流完成。BufferedReader是從緩沖區之中讀取内容,所有的輸入的位元組資料都将放在緩沖區之中。

System.in本身表示的是InputStream(位元組流),現在要求接收的是一個字元流,需要将位元組流變成字元流才可以,是以要用InputStreamReader

Java IO學習9:BufferedReader和Scanner
Java IO學習9:BufferedReader和Scanner

在JDK1.5之後Java提供了專門的輸入資料類,此類可以完成BufferedReader類的功能,也可以友善的對輸入資料進行驗證,此類存放在java.util包中

使用Scanner接收鍵盤的輸入資料:

Java IO學習9:BufferedReader和Scanner
Java IO學習9:BufferedReader和Scanner

比直接使用BufferedReader更加友善,但是這個程式是有問題的,如果輸入的字元串中存在空格,那麼就會截止,如果我們要接收空格的下,将分隔符變成“\n”。

Java IO學習9:BufferedReader和Scanner
Java IO學習9:BufferedReader和Scanner

Face your past without regret. Handle your present with confidence.Prepare for future without fear. keep the faith and drop the fear.

面對過去無怨無悔,把握現在充滿信心,備戰未來無所畏懼。保持信念,克服恐懼!一點一滴的積累,一點一滴的沉澱,學技術需要不斷的積澱!