![](/img/trans.png)
[英]How do I make my Java program stop capturing audio as soon as a certain frequency has been read?
[英]Java - How do I stop my program to read next line(s) after an “Exception”
我需要一些幫助。
當我做出“捕捉異常”的事情時,它不會停止閱讀更多的線條。 我該如何防止這種情況?
我喜歡這樣:
try {
double1 = Double.parseDouble(args[2]);
} catch (NumberFormatException e) {
e.printStackTrace();
user.sendMessage("Can't parse 3rd argument into a number!");
}
if(double1 > 200 || double1 <= 0) {
user.sendMessage("Error. Nothing special here.");
}
當我得到解析錯誤的異常時,它將繼續讀取以讀取其他錯誤預防方法[if(double> 200 || double 1 <= 0){}]並且因為double1不是數字,它將發送出去給執行該操作的用戶另一個ERROR字符串。
這是它尋找用戶的方式:
消息:無法將第三個參數解析為數字!
消息:錯誤。 這里沒什么特別的。
兩條錯誤消息,其中一條甚至不應該存在。 我怎么做才這樣只出現第一個錯誤? 所以它阻止了第二條錯誤消息?
try {
double1 = Double.parseDouble(args[2]);
if (double1 > 200 || double1 <= 0) {
user.sendMessage("Error. Nothing special here.");
}
} catch (NumberFormatException e) {
e.printStackTrace();
user.sendMessage("Can't parse 3rd argument into a number!");
}
這有效,但它不是一個很好的設計。 NumberFormatException
未正確處理,因為您正在記錄它,然后允許其余代碼運行。 你實際上希望它停止執行而不運行其余代碼( if
條件),這就是異常應該做的事情 - 要么提前返回,要么傳播異常以便在堆棧中進一步處理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.