在不使用Java内置函数的情况下,将字符串转换为整数可以通过以下步骤实现:
以下是一个示例代码:
public class StringToInt {
public static int convert(String str) {
if (str == null || str.length() == 0) {
throw new IllegalArgumentException("Invalid input");
}
int result = 0;
boolean isNegative = false;
int startIndex = 0;
if (str.charAt(0) == '-') {
isNegative = true;
startIndex = 1;
}
for (int i = startIndex; i < str.length(); i++) {
char c = str.charAt(i);
if (c < '0' || c > '9') {
throw new IllegalArgumentException("Invalid character in string");
}
int digit = c - '0';
result = result * 10 + digit;
}
return isNegative ? -result : result;
}
public static void main(String[] args) {
String str = "-123";
int num = convert(str);
System.out.println("Converted integer: " + num);
}
}
long
)来存储中间结果,或者使用更复杂的算法来处理溢出。通过上述方法,可以在不使用内置函数的情况下将字符串转换为整数,并处理常见的异常情况。
领取专属 10元无门槛券
手把手带您无忧上云