剑指Offer_49_把字符串转换成整数

来源:互联网 发布:无3c被淘宝下架了宝贝 编辑:程序博客网 时间:2024/05/16 04:57

题目描述

将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0 

输入描述:
输入一个字符串,包括数字字母符号,可以为空
输出描述:
如果是合法的数值表达则返回该数字,否则返回0
输入例子:
+2147483647        1a33
输出例子:
2147483647        0

解题思路

遍历字符串,首先判断第一位是否为+,-,如果是,则跳过。计算后面的字符串表达的数字。

实现

public class Solution {    public int StrToInt(String str) {        if (str == null || str.length() <= 0) return 0;        int index = 0;        int ch = 1;        if (str.charAt(0) == '+' || str.charAt(0) == '-'){            index = 1;            if (str.charAt(0) == '-') ch = -1;        }        int sum = 0;        for (int i = index; i < str.length(); i++){            if (str.charAt(i) < '0' || str.charAt(i) > '9') return 0;            sum = sum * 10 + (str.charAt(i) - '0');        }        return sum*ch;    }    public static void main(String[] args) {        System.out.println(new Solution().StrToInt("123"));    }}
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 饥荒晚上猎狗来怎么办 脑紊乱思维迟缓怎么办 儿童思维反应慢怎么办 w7系统反应慢怎么办 思维缓慢发呆书呆子怎么办 苹果手机网速慢怎么办? 在美国警察杀人怎么办? 征兵填写不知道怎么办 长虹子画面关怎么办 土地被村长霸占怎么办 半夜 手机卡掉了怎么办 淘宝号买家违规怎么办 镍氢电池没电了怎么办 地下室对讲机信号不好怎么办 cf不能说话了怎么办 cf没办法说话怎么办 cf对讲机没声音怎么办 交警用的对讲机怎么办 cf语音没有声音怎么办 去上海没有流量怎么办 去外地没流量怎么办 外地流量不够用怎么办 手机在外地流量怎么办 联通网卡在外地怎么办 套餐流量不够用怎么办 省内流量去省外怎么办 在外省流量不够怎么办 榨汁机开关坏了怎么办 健伍dvd没遥控器怎么办 佳能 显示屏关不了怎么办 iqos充电闪红灯怎么办 航班取消了乘客怎么办 摩托罗拉电话静音了怎么办 对讲机话筒坏了怎么办 摩托罗拉xt1570费电怎么办 主板没有rgb接口怎么办 对讲机频段没了怎么办 怀孕查出宫颈囊怎么办 办养殖场没地怎么办 宝宝睡觉衣服湿透怎么办 开衫衣服往下滑怎么办