将字符串转换为整数 - 如果字符串无效,我应该返回什么

时间:2013-02-21 22:37:37

标签: java string coding-style

如果我想编写一个接受字符串并将其转换为整数的函数,我完全不相信我的输入,如果字符串无效,我应该返回什么。我想返回0,但这会让人感到困惑,因为这个数字实际上可能是0吗?假设这是一个面试问题,你需要检查所有边缘情况。

3 个答案:

答案 0 :(得分:2)

在Java中,抛出异常是常规的。这就是Integer.parseInt()所做的,这是该功能的官方Java实现。

答案 1 :(得分:0)

  

如果字符串无效,我应该返回什么

Throw a RunTimeException API 已经为您完成了这项工作。如果您尝试使用Integer.parseInt(str)解析无效字符串,则会在运行时抛出NumberFormatException

答案 2 :(得分:0)

一种可能的选择是,如果string不能转换为整数,则返回默认值。例如:

public int convert(String input, int defaultValue) {
    try {
        return Integer.parseInt(input);    
    } catch (Exception e) {
        return defaultValue;            
    }
}