請用通俗易懂的文字介紹一下JAVA語言是怎么輸入和輸出的?
說的簡單點就是控制臺輸入和輸出。
輸入有三種方式:BufferedReader、System.in、Scanner
BufferedReader使用起來比較繁瑣,輸入效率也不高;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in))
System.in方式比較固定;
byte buf[] = new byte[1024];
int i = System.in.read(buf);
Scanner非常的方便好用,并且功能強大;
Scanner s = new Scanner(System.in);
輸出有兩種方式:一種正常輸出System.out,一種錯誤輸出System.err
System.out.println("out: "+str);
System.err.println("err: "+str);
Java語言體系中,對數據流的主要操作都封裝在java.io包中,通過java.io包中的類可以實現計算機對數據的輸入、輸出操作。在編寫輸入、輸出操作代碼時,需要用import語句將java.io包導入到應用程序所在的類中,才可以使用java.io中的類和接口。
數據流分類:
流序列中的數據既可以是未經加工的原始二進制數據,也可以是經一定編碼處理后符合某種格式規定的特定數據。因此Java中的流分為兩種:
1) 字節流:數據流中最小的數據單元是字節 。
2) 字符流:數據流中最小的數據單元是字符, Java中的字符是Unicode編碼,一個字符占用兩個字節。
主要的類如下:
1. File(文件特征與管理):用于文件或者目錄的描述信息,例如生成新目錄,修改文件名,刪除文件,判斷文件所在路徑等。
2. InputStream(二進制格式操作):抽象類,基于字節的輸入操作,是所有輸入流的父類。定義了所有輸入流都具有的共同特征。
3. OutputStream(二進制格式操作):抽象類。基于字節的輸出操作。是所有輸出流的父類。定義了所有輸出流都具有的共同特征。
Java中字符是采用Unicode標準,一個字符是16位,即一個字符使用兩個字節來表示。為此,JAVA中引入了處理字符的流。
4. Reader(文件格式操作):抽象類,基于字符的輸入操作。
5. Writer(文件格式操作):抽象類,基于字符的輸出操作。
6. RandomAccessFile(隨機文件操作):它的功能豐富,可以從文件的任意位置進行存取(輸入輸出)操作。