這是否有任何優點/缺點?爲什麼Scanner使用Scanner#ioException()而不是拋出異常?
try {
inputStream.read();
}catch(IOException e) {
e.printStackTrace();
}
但使用Scanner
時,你不會被強迫來處理異常:
通常情況下,你會從一個流讀取時拋出異常。相反,如果有人被拋出,你會使用Scanner#ioException()
。
我知道Scanner
不是一個流,而是一個需要時解析數據的標記器,但是爲什麼它處理異常與涉及IO的其他操作不同?我應該什麼時候以這種方式處理異常?