JZ-049-把字符串转换成整数
把字符串转换成整数 题目描述
【JZ-049-把字符串转换成整数】将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0代码
题目链接: 把字符串转换成整数
- 输入描述:
- 输入一个字符串,包括数字字母符号,可以为空
- 返回值描述:
- 如果是合法的数值表达则返回该数字,否则返回0
/**
* 标题:把字符串转换成整数
* 题目描述
* 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0
* 输入描述:
* 输入一个字符串,包括数字字母符号,可以为空
* 返回值描述:
* 如果是合法的数值表达则返回该数字,否则返回0
* 题目链接:
* https://www.nowcoder.com/practice/1277c681251b4372bdef344468e4f26e?tpId=13&&tqId=11202&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
*/
public class Jz49 {public int strToInt(String str) {
if (str == null || str.length() == 0) {
return 0;
}
boolean isNegative = str.charAt(0) == '-';
int result = 0;
for (int i = 0;
i < str.length();
i++) {
char c = str.charAt(i);
if (i == 0 && (c == '+' || c == '-')) {
continue;
}
if (c < '0' || c > '9') {
return 0;
}
result = result * 10 + (c - '0');
}
return isNegative ? -result : result;
}public static void main(String[] args) {
Jz49 jz49 = new Jz49();
System.out.println(jz49.strToInt("+32293023a"));
System.out.println(jz49.strToInt("+2392032"));
System.out.println(jz49.strToInt("2293043a"));
System.out.println(jz49.strToInt("-fd3323"));
System.out.println(jz49.strToInt("-23232942"));
System.out.println(jz49.strToInt("292930203"));
}
}
【每日寄语】 好的运气从清晨开始,愿你晨起有微笑,笑里有幸福。
推荐阅读
- 死结。
- Y房东的后半生14
- Eddy小文
- 人如果没梦想,和咸鱼有什么区别(自媒体时代把握住就能咸鱼翻身)
- 一起来学习C语言的字符串转换函数
- [青春]翔(五)
- 把一切献给现在
- 早知道你是只飞鸟,我就应该把你关起来
- 做学生的良师益友
- 不舍