最近在学习技术,在使用到java.util.Scanner时遇到了个问题: 问题描述:在使用float fNum = scanner.nextFloat()读取值时,如果输入的值超过8位,读取时会【异常】被截取,导致读取的值和输入的值不符,如果输入时,在值的后面加上"F"或"f",会导致float fNum = scanner.nextFloat()读取报错;鄙人现在在学java技术,自己也想了下,这个问题是不是可以通过scanner.next()方法先读为String类型的值,然后再在这个String字符串后面手动加个"F"或"f",然后再转换成float类型的值,正在尝试,不知各路大仙是否还有更好的办法呢,我想这个太麻烦了呀!
2 回答
千巷猫影
TA贡献1829条经验 获得超7个赞
换成Scanner类的nextDouble()的方法,如果还不够,就直接按字符串读取,然后用Float包装类实例化。
float精度是有限的,所以要根据具体需求,选择float还是double。
- 2 回答
- 0 关注
- 46 浏览
添加回答
举报
0/150
提交
取消