已采納回答 / qq_星河k_0
問題和代碼無關,你只要輸出System.out.println(0xffffffff)就會得到-1;原因是int 是有符號位,占4個字節,而0xffffffff是以int類型存儲的,int是有符號的。即1111 1111 1111.......第一位被用來記錄符號,所以這里就被解釋為負號了,而Java在編碼時,存儲的是負數的補碼,所以你的1111.....就成了1000......+1就是10000.....1就是-1啦。所以16進制最大的數是0x7fffffff.
2018-07-17
已采納回答 / 神樂Triste
您說的是in是什么類型的呢,FileInputStream?在FileInputStream的read()方法中有返回值為int類型的重載函數.
2018-07-07
已采納回答 / 一把年紀小二郎
因為你的只導入了BufferReader的包,沒有導入其余流對應的包 你可以改為1.導入你目前代碼中使用的流包2.直接導入java.io.*所有的IO包
2018-06-18
已采納回答 / HungerCheung
問題原因:<...code...>解決方法:
//注釋掉或者直接刪除下面這行代碼可以得到和老師同樣的結果 //Bar2?bar2?=?new?Bar2(); //該程序是為了測試反序列化得到對象是否調用其構造方法 //因此重新新建一個Bar2的實體對象是完全沒有必要的,反而會混淆測試結果
2018-06-05
已采納回答 / HungerCheung
一樓講很清楚了。老師在課上也說了:雙反斜杠,或者單斜杠都可以表示路徑??茨懔晳T哪一種用法。望采納。如果還有什么不懂,可以私我,我會盡快回復。
2018-05-14
已采納回答 / syousyou
因為調用自己的時候(listDirector(file2);),listDirector()方法重新執行了一次:num重置為0,sum重新計數,System.out.println("一共:"+num+"個文件!")重新打印一次
2018-05-08
已采納回答 / 慕斯卡3197864
你好,一開始read返回的是讀取的字節數;當把內容都讀完后,返回的數為-1舉個例子:例如要讀取的文件字節數是100,buf.length為60。第一次read返回給bytes的是讀取的字節數:大小為數組的長度60;第二次read返回給bytes的還是讀取的字節數,但大小為剩下的100-60=40了;第三次由于到文件末尾,100個字節內容都讀完了,read就返回-1給bytes綜上,文件沒讀完時,read返回的是讀取的字節數;文件讀完后,read返回的是-1,用于判斷文件是否讀取完成。望采納。
2018-04-11