把字符串转换成整数

把字符串转换成整数

https://www.nowcoder.com/practice/1277c681251b4372bdef344468e4f26e?tpId=13&&tqId=11202&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

若为负数,则输出负数,ASCII码,字符 0 对应 48, 9 对应 57,不在范围内则返回 false

public int StrToInt(String str) {
        if(str == null || str.length() == 0)
            return 0;
        int number = 0;
        int mark = 0;
        if(str.charAt(0) == '-')
            mark = 1;  /*为什么要mark要设置为整型的呢?是因为如果是负数那么我们就从下标为1的位置还是算起*/
        for(int i = mark; i < str.length(); i++){
            if(str.charAt(i) == '+')
                continue;
            if(str.charAt(i) < 48 || str.charAt(i) > 57)
                return 0;
            number = number*10+str.charAt(i)-48;
        }
        return mark==1?-number:number;
    }
剑指offer 文章被收录于专栏

为刷过的每一道题都书写一篇题解,便于重复练习~

全部评论

相关推荐

点赞 评论 收藏
分享
10-07 20:48
门头沟学院 Java
听说改名就会有offer:可能是实习上着班想到后面还要回学校给导师做牛马,看着身边都是21-25的年纪,突然emo了了
点赞 评论 收藏
分享
offer多多的六边形战士很无语:看了你的博客,感觉挺不错的,可以把你的访问量和粉丝数在简历里提一下,闪光点(仅个人意见)
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务