新来的实习妹纸被老大骂了,因为她自己写了将字符串转换为整数的工具。。。

简介: 新来的实习妹纸被老大骂了,因为她自己写了将字符串转换为整数的工具。。。

大家好,我是鸭哥

编程启蒙语言是 C 或 C++ 的同学都知道,字符串转换成整数是一道经典的编程题目,不仅能考察我们的编程知识,程序的健壮性也能反映出我们的编程功底。鸭哥组里有个妹子是 C++ 转 Java 开发的,平时工作非常认真,但有时候会钻牛角尖,因为不太了解 Java 一些工具类的妙用,想重复造轮子。

昨天,因为工作中要将字符串转换为整数,妹子首先想的是自己写一个转换的工具类,但是搞了半天还是有问题,而且不敢保证程序的健壮性,所以向鸭哥求助。其实 Java 中是有现成的方法可以直接用的,我们一起来帮妹子看看吧~

讲解


我们可以使用以下的两种方法,将字符串转换为整数,

String strNum = "123";
//返回Integer对象
Integer objectNum = Integer.valueOf(strNum);
//返回int类型数字
int valueNum = Integer.parseInt(strNum);


这两种方法有什么不同呢?

valueOf()方法返回的是一个 Integer 对象,而parseInt()返回的则是基本数据 int 的一个值

同时这两个方法又有联系,可以这种联系简单地理解为如下的关系,

Integer objectNum = new Integer(parseInt(strNum));


提醒


在使用上述的方法进行转换前,我们首先要保证字符串中数字的格式是正确的,否则转换时将会抛 NumberFormatException, 示例如下:

String strNum = "123hello";
Integer objectNum = Integer.valueOf(strNum);

运行结果:

image.png

而当我们用Integer.valueOf()方法转换字符串格式的小数时,也会抛出上述的异常,

String strNum = "123.1";
Integer objectNum = Integer.valueOf(strNum);

怎样解决呢?举一反三,使用 Float.valueOf()方法即可,

String strNum = "123.1";
Float objectNum = Float.valueOf(strNum);

类似的还有 Short.valueOf() / parseShort(), Long.valueOf() / parseLong() 等方法,我们可以实际的场景选用。


鸭哥想提醒大家,工作中讲究产出第一,面对一个问题,我们首先应该思考是否已有解决方案,有的话就拿过来用,
没有的话再自行解决。同时,简单的知识点了然于胸,有时候可以少走很多弯路,这就是基础如此重要的原因。基础扎实了,加上能力强,就能吸引别人来请教交流,妹子不重要,重要的是能交流学习,大家说呢?

相关文章
|
8月前
|
算法 搜索推荐 程序员
C语言十九练——养兔子
C语言十九练——养兔子
82 0
|
7月前
|
存储 Java 容器
研二学妹面试字节,竟倒在了ThreadLocal上,这是不要应届生还是不要女生啊?
【6月更文挑战第1天】研二学妹面试字节,竟倒在了ThreadLocal上,这是不要应届生还是不要女生啊?
52 5
|
8月前
|
网络协议 网络安全 网络虚拟化
网工大题题型总结(3)------2018到2022大题类型总结
网工大题题型总结(3)------2018到2022大题类型总结
39 2
|
8月前
|
存储 缓存 安全
面试官:小伙子,能聊明白JMM给你SSP!我:嘚吧嘚吧一万字,直接征服面试官!
面试官:小伙子,能聊明白JMM给你SSP!我:嘚吧嘚吧一万字,直接征服面试官!
56 1
|
C语言
指针不可怕,请爱它呵护它(狗头)
指针不可怕,请爱它呵护它(狗头)
83 0
|
C语言 C++
PTA团体程序设计天梯赛-练习集: L1-050 倒数第N个字符串 ( 15分 )
给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,序列为 { aaa, aab, aac, ..., aaz, aba, abb, ..., abz, ..., zzz }。这个序列的倒数第27个字符串就是 zyz。对于任意给定的 L,本题要求你给出对应序列倒数第 N 个字符串。 输入格式: 输入在一行中给出两个正整数 L(2 ≤ L ≤ 6)和 N(≤105)。 输出格式: 在一行中输出对应序列倒数第 N 个字符串。题目保证这个字符串是存在的。 输入样例:
185 0
|
算法
KMP算法——我欲修仙(功法篇)
KMP算法——我欲修仙(功法篇)
114 0
|
算法 C语言
二分查找——我欲修仙(功法篇)
二分查找——我欲修仙(功法篇)
97 0
|
C语言
下面【整型提升】的例题,你会几道?学完这一课,你将真正拿捏整型提升问题
下面【整型提升】的例题,你会几道?学完这一课,你将真正拿捏整型提升问题
153 0
下面【整型提升】的例题,你会几道?学完这一课,你将真正拿捏整型提升问题
|
Java
Java福尔摩斯的约会大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了
Java福尔摩斯的约会大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了
144 0
Java福尔摩斯的约会大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了

热门文章

最新文章

相关实验场景

更多