Java面试题:IO流中read()方法为什么返回值是int
生活随笔
收集整理的這篇文章主要介紹了
Java面试题:IO流中read()方法为什么返回值是int
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Question:IO流中read()方法為什么返回值是int?
anwser:因為字節輸入流可以操作任意類型的文件,比如圖片音頻等,這些文件底層都是以二進制形式的存儲的,如果每次讀取都返回byte,一次讀取一個字節為8位,有可能在讀到中間的時候遇到111111111,那么這11111111是byte類型的-1,我們的程序是遇到-1就會停止不讀了,后面的數據就讀不到了,所以在讀取的時候用int類型接收,int是32位,如11111111會在其前面補上24個0湊足4個字節,那么byte類型的-1就變成int類型的255了這樣可以保證整個數據讀完,而結束標記的-1就是int類型 。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Java面试题:IO流中read()方法为什么返回值是int的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: day44-前端知识之HTML内容
- 下一篇: 19-A Walk-based Mode