码迷,mamicode.com
首页 > 其他好文 > 详细

将字符串转成整数的函数给我看一下吗,简单看一下代码基本功。要求:不要调用parseInt等转换函数

时间:2018-10-17 00:19:55      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:rac   int   转换   oid   简单   ack   面试   auth   转换函数   

为了提高面试流程效率,方便用java写一段将字符串转成整数的函数给我看一下吗,简单看一下代码基本功。

要求:不要调用parseInt等转换函数。按位读取字符串里的字符进行处理将字符串转化为整数,

不考虑整数溢出问题,给定的输入一定是合法输入不包含非法字符,字符串头尾没有空格,

考虑字符串开头可能有正负号。public int StringToInt(String str)

 

import javax.net.ssl.SSLContext;

/**
 * 字符串转为int
 * @author   IT                      
 * @Date	 2018年10月16日 	 
 */
public class StringToInt {

	public static void main(String[] args) {
		String s = "2018";
		
		try {
			System.out.println("转换结果"+parse(s));
		} catch (Exception e) {
			e.printStackTrace();	
		}
	}
	

	
	public static int parse(String s) throws Exception{
	    int result = 0;
	    if (s == null || s.length() == 0) {
	      throw new Exception("字符串为空");
	    }
	    
		 String s1 = s;
//			if(s.startsWith("-")) {
//				s1 = s.substring(1, s.length());	
//		}
			
    for (int i = 0; i < s1.length(); i++) {
        if (i==0) {
          if(s1.charAt(i) == ‘-‘ ){
            continue;
          }
        }else{
          if(s1.charAt(i)>‘9‘ || s1.charAt(i)<‘0‘){
            throw new Exception("字符串格式错误");
          }
        }
        result = result * 10;
        result = ( result + s1.charAt(i) ) - ‘0‘;
        System.out.println("每一位数:"+s1.charAt(i));
        System.out.println("每一次累加结果:"+result);
      }
      return result;
	}
}

  

将字符串转成整数的函数给我看一下吗,简单看一下代码基本功。要求:不要调用parseInt等转换函数

标签:rac   int   转换   oid   简单   ack   面试   auth   转换函数   

原文地址:https://www.cnblogs.com/itBulls/p/9800942.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!