java如何把字符串变成整数_Java 实现把字符串转换成整数
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0 。
输入一个字符串,包括数字字母符号,可以为空;
如果是合法的数值表达则返回该数字,否则返回0;
代码
public static int parseString2Int(String str) {
if (Strings.isNullOrEmpty(str)) {
return 0;
}
// 数字的正负,默认是正数
int symbol = 1;
char[] array = str.toCharArray();
int sum = 0;
// 如果第一位是'-',说明结果应该是个负数,'+'不需要处理symbol
// 同时替换该位置上的字符为0,这样在下面的处理中,可以认为是跳过该字符
// 因为0 * 10还是0
if (array[0] == '-') {
symbol = -1;
array[0] = '0';
} else if (array[0] == '+') {
array[0] = '0';
}
for (int i = 0; i < array.length; i++) {
// 如果不是数字,而是其他字母符号一类非数字字符,则直接返回0
if (array[i] < '0' || array[i] > '9') {
return 0;
}
// sum * 10是为了将当前已获得数字整体左移一位,让新的数字可以处于个位上,比如"12"
// 第一次拿出1,在第二次拿出2的时候,1应该在十位上,2在个位上,所以 1 * 10 + 2 = 12
// array[i] - '0',这里减去字符'0',是因为字符'0'-'9'的ascii码值与其对应的数字相差48,而'0'的ascii码值正好是48
sum = sum * 10 + array[i] - '0';
}
return sum * symbol;
}
public static void main(String[] args) {
int result = parseString2Int("123");
System.out.println(result);
}
java如何把字符串变成整数_Java 实现把字符串转换成整数相关推荐
- 算法笔记_028:字符串转换成整数(Java)
1 问题描述 输入一个由数字组成的字符串,请把它转换成整数并输出.例如,输入字符串"123",输出整数123. 请写出一个函数实现该功能,不能使用库函数. 2 解决方案 解答本问题 ...
- 【Java】 剑指offer(67) 把字符串转换成整数
本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 请你写一个函数StrToInt,实现把字符串转换成整数这个功能 ...
- 剑指Offer(Java版):把字符串转换成整数
2019独角兽企业重金招聘Python工程师标准>>> 题目:实现一个函数 stringToInt,实现把字符串转换成整数这个功能,不能使用 atoi 或者其他类似的库函数. 题目解 ...
- Java实现字符串转换成整数
1 问题描述 输入一个由数字组成的字符串,请把它转换成整数并输出.例如,输入字符串"123",输出整数123. 请写出一个函数实现该功能,不能使用库函数. 2 解决方案 解答本问题 ...
- 面试题67. 把字符串转换成整数
题目 写一个函数 StrToInt,实现把字符串转换成整数这个功能.不能使用 atoi 或者其他类似的库函数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当我们 ...
- 67. 把字符串转换成整数
文章目录 剑指 Offer 67. 把字符串转换成整数 解题思路 Java代码 剑指 Offer 67. 把字符串转换成整数 写一个函数 StrToInt,实现把字符串转换成整数这个功能.不能使用 a ...
- java浮点数化为整数_[Java教程]javascript浮点数转换成整数三种方法
[Java教程]javascript浮点数转换成整数三种方法 0 2014-06-24 04:00:27 将浮点数转换成整数方法有很多,分享三种常用方法. Summary 暂时我就想到3个方法而已.如 ...
- 程序员编程艺术第三十 三十一章 字符串转换成整数,通配符字符串匹配
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 第三十~ ...
- 字符串转换成整数,带通配符的字符串匹配
之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大段的时间,而平时上班,周末则跑去北大教室自习看书(顺便以时间为序,说下过去半年看过的自觉还不错的数学史方面的书:<数理统计学简 ...
- 把字符串转换成整数(2014年阿里巴巴实习生招聘面试题)
题目:写一个strToInt函数,实现字符串str转换成整数num. 如何将字符串转换成整数,本文使用Java列出了三种方法: 1.利用java.lang.Integer类中的静态函数parseInt ...
最新文章
- 关于 SoftEther ***
- java如何获得点的横纵坐标_横纵坐标怎么区分
- ext3文件系统反删除利器-ext3grep
- sql 与linq的转换
- 利用usb远程控制linux,Linux编程控制硬件(5) ---- 操作USB手柄
- 【机器视觉】 dev_set_shape算子
- mysql做主从复制配置案例
- BZOJ 4808: 马(二分图最大点独立集)
- chromedriver : Saving to 安装卡住 解决
- mysql存储过程执行update_MySQL存储过程实现动态执行SQL
- 电商移动促销页面设计素材PSD分层模板,轻松出稿稿
- Git 分支相关操作
- mysql ip 访问_MySql通过ip地址进行访问的方法
- Java语法基础学习DayNineteen(反射机制)
- java实现阳历农历节以及节假日日期计算
- DAY 2 Perceived and cognition || HTML CSS 入门
- WIN10系统进入BIOS的方法(无需开机时按快捷键)
- arm -linux开发产品,arm是什么意思_arm的翻译_音标_读音_用法_例句_爱词霸在线词典...
- ncm 网络_HS-NCM超高速网卡
- 图书管理系统之带验证码登录界面
热门文章
- 【汇正财经顾晨浩】2023 年风电交付大年,聚焦大型化及深远海
- .Net Core有哪些不错的开源项目?
- QLib微软量化学习笔记
- android studio 加载so文件各种错误
- 2、线程池篇 - 从理论基础到具体代码示例讲解(持续更新中......)
- 计算机网络技术术语翻译,计算机网络词汇中文英语翻译对照术语
- 卫生专业人士请求WHO指导民众用鼻腔喷雾剂抗击COVID-19大流行、 医生用其治疗患者
- 三种让div居中的方式
- 淀种念想,和顺沧海桑田间
- 微信公众号开发配置url提示token验证失败(http可以,https失败)