题目:写一个strToInt函数,实现字符串str转换成整数num。

如何将字符串转换成整数,本文使用Java列出了三种方法:

1、利用java.lang.Integer类中的静态函数parseInt(String str)

int num = Integer.parseInt(str);

2、同样是利用java.lang.Integer中的函数,先将字符串转换成Integer对象,再得到整数

int num = Integer.valueOf(str).intValue();

3、第三种方法不采用jdk库中已经封装好的字符串转整数的方法,而是自己实现

public class Program {private static String status = "valid"; // 记录str是否可以转换成numpublic int strToInt(String str) {status = "invalid";long num = 0;char[] chars = str.toCharArray();if (str != null && str != "") {boolean minus = false; // 用于记录num是否是负数if (chars[0] == '+') {str = str.replace("+", "");} else if (chars[0] == '-') {minus = true;str = str.replace("-", "");}if (str != "") {char[] digit = str.toCharArray();num = StrToIntCore(digit, minus);}}return (int)num;}private long StrToIntCore(char[] digit, boolean minus) {long num = 0;int index = 0; // 索引下标while (index < digit.length) {if (digit[index] >= '0' && digit[index] <= '9') {int flag = minus ? -1 : 1;num = num * 10 + flag * (digit[index] - '0');if ( (!minus && num > 0x7fffffff) || (minus && num < 0x80000000) ) {num = 0;break;}++index;} else {num = 0;break;}}if (index == digit.length) {status = "valid";}return num;}}

把字符串转换成整数(2014年阿里巴巴实习生招聘面试题)相关推荐

  1. oracle 转化为整数,字符串转换成整数——从源码学习

    字符串转换成整数:输入一个表示整数的字符串,把该字符串转换成整数并输出,例如输入字符串"345",则输出整数345. 在笔试面试中,atoi 即「字符串转换成整数」是一个经典问题了 ...

  2. 将十六进制的字符串转换成整数

    #include "stdafx.h" #include<stdio.h> #include<string.h>/*将大写字母转换成小写字母*/ int t ...

  3. python 字符串转换成整数

    | String to Int 写一个函数 StrToInt,实现把字符串转换成整数这个功能.不能使用 atoi 或者其他类似的库函数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个 ...

  4. 程序员面试题精选100题(17)-把字符串转换成整数[算法]

    题目:输入一个表示整数的字符串,把该字符串转换成整数并输出.例如输入字符串"345",则输出整数345. 分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程 ...

  5. 判断字符为空_49. 把字符串转换成整数(剑指offer)

    49. 把字符串转换成整数 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符串不是一个合法的数值则返回0. 输入描述: 输入一个字符串,包括数字字母符号,可以为空 输 ...

  6. 2019-02-26-算法-进化(字符串转换成整数)

    题目描述: 请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当我们寻找到的第一个非空字符为正或者负号时,则 ...

  7. 在要求输入数字处找到非数字字符_剑指 Offer 67. 把字符串转换成整数 leetcode 剑指offer系列...

    点击专辑上方"蓝字"关注我吧 题目难度: 中等 原题链接[1] 今天继续更新剑指 offer 系列, 老样子晚上 6 点 45 分准时更新公众号 每日精选算法题, 大家记得关注哦~ ...

  8. 【Java】 剑指offer(67) 把字符串转换成整数

      本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 请你写一个函数StrToInt,实现把字符串转换成整数这个功能 ...

  9. leetcode —— 面试题67. 把字符串转换成整数

    写一个函数 StrToInt,实现把字符串转换成整数这个功能.不能使用 atoi 或者其他类似的库函数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当我们寻找到 ...

最新文章

  1. 个人学习某个系统或平台的3问式的整理和细化指引
  2. 95页重磅报告:全面预测未来5年趋势
  3. 【Android 逆向】函数拦截实例 ( 函数拦截流程 | ① 定位动态库及函数位置 )
  4. 八、给小白看的第一篇Python基础教程
  5. Java高级工程师必看系列,已拿到offer
  6. 从最大似然到EM算法浅解(转载)
  7. go 链路追踪_Go技术日报(20200911)
  8. (88)FPGA乘法器设计(移位相加乘法器)
  9. 解决Sql Server服务远程过程调用失败
  10. 约7459元!索尼Xperia 1即将亮相:全球首款4K骁龙855新机
  11. MySQL group_concat函数使用详解
  12. Linux 利用hosts.deny 防止暴力破解ssh
  13. 初探队与广度优先搜索
  14. 数据结构+算法+c++学习(写在前面)
  15. LightOJ - 1050 (唯一分解+推公式+乘法逆元)
  16. 数据结构 以数组的形式存储数据(c语言 干货满满)
  17. 看我是如何严辞拒绝同学借钱的
  18. DL | TensorFlow代码调试
  19. python和scre_python中变量命名的基本规则,标识符和关键字
  20. 用Python+小程序实现诗词大会的飞花令 !

热门文章

  1. 源码系列第1弹 | 带你快速攻略Kafka源码之旅入门篇
  2. oracle给已有表添加主键
  3. 网站被CC攻击了如何应对?
  4. Discuz! Q公测版来啦!
  5. 黄芪丹参饮,老程序员可试试
  6. 共享计算机没有响应,网络共享打印机出现联机无反应的处理方法
  7. DICOM-Modality
  8. 让中药的12位美白仙子重塑健康肌肤
  9. android:stretchColumns=”0″
  10. 为捧自己Diss同行,猎豹傅盛发布机器人,敢问路在何方?