Java IO流是面試時常被問到的一個話題。下面是關于Java IO流的一些面試題和選擇題。
面試題:
1.什么是Java IO流? Java IO流是Java語言中提供的一套用于處理輸入輸出數據的API,包括輸入流和輸出流。 2.輸入流和輸出流的區別是什么? 輸入流從外部讀取數據到內存中,而輸出流是將內存中的數據輸出到外部。 3.什么是字節流和字符流? 字節流以8位字節為單位來處理輸入輸出數據,而字符流以16位字符為單位來處理輸入輸出數據。 4.什么是節點流和處理流? 節點流是直接連接輸入輸出源的流,而處理流是連接在節點流之上提供額外的處理功能的流。 5.Java中有哪些常見的IO流? 常見的IO流有:FileInputStream/FileOutputStream、BufferedInputStream/BufferedOutputStream、FileReader/FileWriter、BufferedReader/BufferedWriter等等。 6.什么是流的緩沖區? 流的緩沖區是一個臨時存儲區域,可以暫時存儲即將讀寫的數據,防止頻繁讀寫而導致的效率降低。 7.使用Java如何讀取文件? 首先需要創建一個File對象,然后通過FileInputStream來讀取文件。可以使用read方法讀取文件中的字節數據,也可以使用BufferedInputStream和BufferedReader等流來讀取文件中的數據。
選擇題:
1.下面哪個IO流是用來讀取Java對象的?
A. FileReader B. ObjectOutputStream C. ObjectInputStream D. PrintWriter
答案:C(ObjectInputStream)
2.下面哪個IO流可以將字節數據轉化為字符數據?
A. ByteArrayInputStream B. DataInputStream C. InputStreamReader D. BufferedInputStream
答案:C(InputStreamReader)
3.下面哪個IO流可以將字符數據按行讀取?
A. FileReader B. DataInputStream C. InputStreamReader D. BufferedReader
答案:D(BufferedReader)