我使用的形式空檢查在斯卡拉while循環,不尋常的行爲
while((str = br.readLine()) != null){
sb.append(str)
}
聚合使用BufferedReader
的InputStream
的內容,但這個迅速引起了OutOfMemoryError
作爲空檢查失敗拿起空我StringBuffer
規模不斷增加......
我已經驗證str
確實有null
的值,也驗證了它不是"null"
。
重構我的代碼
str = br.readLine()
while(str != null){
sb.append(str)
str = br.readLine()
}
的作品,但我不知道如何做到這一點是任何不同。有任何想法嗎?
還有更多類似Scala的方式來讀取文件的內容,例如: 'val sb = new StringBuilder; Source.fromFile(myFile).addString(sb)' – Jesper
@Jesper這裏的問題是,我正在使用Java庫:)我會記住你的建議。 –