• 51.把字符串转化为整数


    题目描述:

      将一个字符串转化为一个整数,实现Integer.valueOf(String)的功能,如果对于不满足要求的字符串,比如字符串中出现字母,或者其他不是数字形式的字符串,输出0。

      例如:+123456 输出:123456

      123a 输出:0

    思路分析:

      这道题主要考虑处理处理字符串时的一些特殊情况,比如输入字符串为“ ”,这种形式,或者字符串的第一个字符是否是“+”和“-”字符。

    代码:

    public class Test{
        public int stringToInteger(String s){
            if(s==null||s.length()==0)
                return 0;
            if(s.trim().equals(""))  //如果输入的字符串为“   ”
                return 0;
            boolean flag=true;  //用来判断数字的正负
            if(s.charAt(0)=='-')
                flag=false;
            int sum=0;
            for(int i=(s.charAt(0)=='+'||s.charAt(0)=='-')?1:0;i<s.length();i++){  //如果字符串的第一个字符是正负号,那么我们从第二个元素开始遍历,如果不是就从第一个元素遍历。
                if(s.charAt(i)>'0'&&s.charAt(i)<'9'){
                    sum=sum*10+(s.charAt(i)-'0');
                }else{
                    return 0;
                }
            }
            if(flag==true)
                return sum;
            else
                return -sum;
        }
    }
    
  • 相关阅读:
    3ds
    markdown-to-html.min.js
    $interpolateProvider
    Angular 插值字符串
    Angular 手动解析表达式
    JAVA 多线程
    listFiles()
    键盘读入
    BufferedInputStream、BufferedOutputStream
    FileInputStream、FileOutputStream的应用
  • 原文地址:https://www.cnblogs.com/yjxyy/p/10935647.html
Copyright © 2020-2023  润新知