使用try-catch塊時,將catch塊留空是否總是一種糟糕的編程技巧?捕捉異常,是否和不要
在我預計會發生異常的情況下,例如,我正在從文件讀取10個值並將每個值轉換爲字符串。有可能這10個值中的一個可能爲空,但我不想在這一點停止執行,而是繼續(明顯使用try catch)
我的一個蹩腳的例子嘗試:
String _text = textReader.ReadLine(); //Assuming this RETURNS a NULL value
try {
String _check = _text.ToString();
//Do something with _check, but it should not be NULL
}
catch (Exception)
{ //Do Nothing }
在這一點上,當我抓到一個例外:
1.我不想記錄此。因爲我期待一個錯誤的價值。
2.我不想重新向調用堆棧拋出異常。
3.我想繼續執行我的執行
在這些情況下,是否可以接受爲空?或者這是一個完整的NO-NO,有更好的方法來處理這個問題嗎?
我認爲這可以是一個社區維基,因爲它也處理編程技術。
- 伊瓦爾
可能重複:http://stackoverflow.com/questions/2737328/why-should-i-not-wrap-every-block-in-try-catch – Konrad 2010-07-15 18:55:20
@Konrad:我不認爲所以。你列出的可能重複是關於try/catch塊是否應該正常使用;這是一個空的catch塊在某種情況下是否有意義。 – 2010-07-15 19:13:30