剑指offer编程题解法汇总49-把字符串转换成整数
编程 字符串 汇总 Offer 整数 转换成 解法 49
2023-09-11 14:18:52 时间
描述
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0
输入描述:
输入一个字符串,包括数字字母符号,可以为空
返回值描述:
如果是合法的数值表达则返回该数字,否则返回0
示例1
输入:
"+2147483647"
返回值:
2147483647
示例2
输入:
"1a33"
返回值:
0
解题思路:
这题感觉出的思路有问题,或者感觉没有描述清楚。如果555+333,应该返回的是什么呢?这题验证下来是555333,但是我感觉888更合适。
代码:
public class Solution {
public int StrToInt(String str) {
boolean isFushu = false;
StringBuilder builder = new StringBuilder();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c >= 48 && c <= 57) {
builder.append(c);
} else if (c == 43) {
//+
} else if (c == 45) {
//-
isFushu = true;
} else if (c == 47) {
//除 /
} else if (c == 42) {
//*
} else {
return 0;
}
}
if (builder.length() == 0) {
return 0;
}
int result = Integer.parseInt(builder.toString());
if (isFushu) {
return -result;
}
return result;
}
}
相关文章
- 计算机专业的学生怎样练习编程才能把编程学精通?
- Windows核心编程笔记之处理字符串
- 对话黄志敏|探索数据领域的新可能 文科生如何做编程和统计?
- 《趣学JavaScript——教孩子学编程》——2.5 undefined和null
- 《C++编程惯用法——高级程序员常用方法和技巧》——2.2 赋值
- 《Python游戏编程入门》——第1章 使用类的Python 1.1 了解Geometry程序
- 基因编程时代要来临了?什么物种都可以创造?细思极恐
- 剑指offer编程题解法汇总43-左旋转字符串
- 小学生python游戏编程arcade----6射击及子弹
- 学习笔记(23):Python网络编程&并发编程-开启线程的两种方式
- 编程实战——电影管理器之界面UI及动画切换
- 编程参考 - 如何计算字符串的哈希值
- 编程参考 - C语言中将字符串转换为整数