剑指 Offer 67. 把字符串转换成整数 + 字符串

剑指 Offer 67. 把字符串转换成整数

Offer_67

题目描述

题解分析

java代码

package com.walegarrett.offer;

/**
 * @Author WaleGarrett
 * @Date 2021/2/15 23:13
 */

/**
 * 题目描述:写一个函数 StrToInt,实现把字符串转换成整数这个功能。不能使用 atoi 或者其他类似的库函数。
 */
public class Offer_67 {
    public int strToInt(String str) {
        str = str.trim();
        int len = str.length();
        if(str.length()==0)
            return 0;
        int res = 0;
        int over = Integer.MAX_VALUE / 10;
        int i=1,flag=1;
        if(str.charAt(0) =='-')
            flag=-1;
        else if(str.charAt(0)!='+')
            i=0;
        for(int j=i; j<len; j++){
            if(str.charAt(j)<'0' || str.charAt(j)>'9')
                break;
            if(res>over || res==over && str.charAt(j)>'7')
                return flag==1?Integer.MAX_VALUE:Integer.MIN_VALUE;
            res = res*10+(str.charAt(j)-'0');
        }
        return flag*res;
    }
}
posted @   Garrett_Wale  阅读(48)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示