以安全的方式将字符串转换为整数
2022-09-03 01:20:35
我有一个小方法,除其他外,还可以将字符串转换为整数。由于字符串是该方法的参数,因此我想确保该字符串是可转换的。所以我只是想知道什么是最安全和/或最快的方法。
版本A:保持原样并承担风险(我试图避免)
public static int stringToInt(String param) {
return Integer.valueOf(param);
}
(就速度而言,它对版本B和C会产生什么样的差异?
版本 B:捕获异常
public static int stringToInt(String param) {
try {
return Integer.valueOf(param);
} catch(NumberFormatException e) {
return -1;
}
}
版本C:检查字符串的每个字母以查看它是否为数字
public static int stringToInt(String param) {
for(char c : param.toCharArray()) {
if(!Character.isDigit(c))
return -1;
}
return Integer.valueOf(param);
}
请注意,参数必须是正数,-1应该是我的小程序中的“错误值”,换句话说,所有三个版本的方法在我的程序中都可以完美地工作。
我非常愿意接受你能给我的任何其他建议,所以如果你认为你的版本更好,请随时创建你自己的版本。
非常感谢您的支持。