zoukankan      html  css  js  c++  java
  • StringToInt(atoi) 字符串转换成整数

    public class StringToInt {
        public int atoi(String s)
        {
            long num = 0;
            int minus = 0;
            if(s==null) 
            {
                return (int)num;
            }
            //过滤所有空格
            s = s.trim();
            for(int i = 0; i < s.length(); i++ )
            {
                if(i==0 && s.charAt(i)=='-')//过滤首个字符是负号
                {
                    minus = 1;
                    continue;
                }
                
                if(i==0 && s.charAt(i)=='+')//过滤首个字符是正号
                {
                    continue;
                }
    //            if(Character.isWhitespace(s.charAt(i)))//过滤空格
    //            {
    //                continue;
    //            }
                
                if(s.charAt(i)>='0' && s.charAt(i)<='9')//正常情况
                {
                    num = num*10 + s.charAt(i)-'0';
                    //一定要在这里判断num的值,而不是放在最后,因为num值可能不仅超过int还超过long,在这里判断可以及时break
                    if(num > Integer.MAX_VALUE)
                    {
                        num = minus > 0 ? Integer.MIN_VALUE : Integer.MAX_VALUE;
                        return (int)num;
                    }
                }
                else
                {
                    break;
                }
            }
            if(minus == 1)
            {
                num = 0-num;
            }
            
            return (int)num;
        }
        
        public static void main(String[] args)
        {
            StingToInt t = new StingToInt();
            System.out.println(t.atoi("  -  232a23"));//输出-232
        }
    }
  • 相关阅读:
    组件之间通信(父传子)
    flex布局
    ffmpeg解析TS流(转)
    swift之?和!的含义(转)
    Swift之画圆角添加多个枚举值方法
    swift之singleton
    swift之闭包
    Swift之fallthrough
    Selector
    Settings Bundle
  • 原文地址:https://www.cnblogs.com/masterlibin/p/5523415.html
Copyright © 2011-2022 走看看