如果我想編寫一個接受字符串並將其轉換爲整數的函數,並且我完全不信任我的輸入,那麼如果字符串無效。我想返回0,但這會令人困惑,因爲數字實際上可能是0?假設這是面試問題,您需要檢查所有邊緣案例。將字符串轉換爲整數 - 如果字符串無效,應該返回什麼
回答
什麼,我應該返回,如果字符串無效
Throw a RunTimeException
。 API已經爲你做了。如果你嘗試使用Integer.parseInt(str)
解析無效字符串,它會在運行時拋出NumberFormatException
。
最後我檢查,這是一個NumberFormatException。但我可能是錯的。 – Achrome 2013-02-21 22:42:28
@AshwinMukhija哎呀,我在想什麼..最近一直在工作。所以kindagot用於parseException ..:P – PermGenError 2013-02-21 22:43:40
如果它爲空或空字符串,是否也應該被認爲是NumberFormatException? – user1136342 2013-02-21 22:51:14
在Java中,拋出Exception是常規操作。這就是Integer.parseInt()
所做的,這是該功能的官方Java實現。
如果它爲空或空字符串呢?空字符串是否也會拋出異常?空字符串應該拋出一個不同的異常(而不是nullpointerexception)? – user1136342 2013-02-21 22:43:04
是的,儘管'IllegalArgumentException'也可以。 – 2013-02-21 22:45:04
一個可能的選擇是如果字符串不能轉換爲整數,則返回默認值。例如:
public int convert(String input, int defaultValue) {
try {
return Integer.parseInt(input);
} catch (Exception e) {
return defaultValue;
}
}
- 1. PHP轉換(整數)返回字符串
- 2. JQuery.each將字符串文字轉換爲字符串。爲什麼?
- 3. 將字符串轉換爲Double然後返回字符串
- 4. 將字符串轉換爲整數
- 5. 將字符串轉換爲整數
- 6. Python將字符串轉換爲整數?
- 7. 將字符串轉換爲整數C#
- 8. Swift:將字符串轉換爲整數
- 9. 將字符串轉換爲整數
- 10. 將字符串轉換爲整數
- 11. 將字符串轉換爲大整數?
- 12. 將字符串轉換爲整數?
- 13. Java將字符串轉換爲整數
- 14. 將整數轉換爲字符串
- 15. 將字符串轉換爲整數
- 16. 將整數轉換爲字符串
- 17. 將字符串轉換爲整數
- 18. 將字符串轉換爲字符串
- 19. 如何將指數數字字符串轉換爲整數字符串
- 20. 應該將字符串轉換爲NSDate的格式是什麼?
- 21. 無法將字節字符串轉換回字符串
- 22. 是NSDateFormatter dateFromString:應該返回無效的字符串爲零?
- 23. 將字符串轉換爲字符串後無法反轉字符串Array
- 24. 將字符串數組轉換爲字節數組並返回
- 25. 無論如何讓Eclipse將字符串轉換爲字符串?
- 26. VB.NET - 將字符串轉換爲雙精度字符並返回
- 27. 無法在C++中將整數字符串轉換爲整數
- 28. 如何將數字結果轉換爲符號或字符串?
- 29. 字符串轉換爲double無效VB.net
- 30. 在C++中將字符數組轉換爲整數字符串
A)核心語言已經存在('Integer.parseInt()')B)當輸入錯誤時它會引發異常。 – 2013-02-21 22:38:20
爲什麼不只是使用'Integer.parseInt();' – 2013-02-21 22:38:31
@Jigar Joshi:這只是我看到的一個樣本面試問題,我想知道返回的最好的東西(也許是什麼邊緣情況下檢查) – user1136342 2013-02-21 22:40:07