java中Scanner的使用问题,读取float类型输入值

最近在学习技术,在使用到java.util.Scanner时遇到了个问题: 问题描述:在使用float fNum = scanner.nextFloat()读取值时,如果输入的值超过8位,读取时会【异常】被截取,导致读取的值和输入的值不符,如果输入时,在值的后面加上"F"或"f",会导致float fNum = scanner.nextFloat()读取报错;

鄙人现在在学java技术,自己也想了下,这个问题是不是可以通过scanner.next()方法先读为String类型的值,然后再在这个String字符串后面手动加个"F"或"f",然后再转换成float类型的值,正在尝试,不知各路大仙是否还有更好的办法呢,我想这个太麻烦了呀!


开心每一天1111
浏览 47回答 2
2回答

千巷猫影

换成Scanner类的nextDouble()的方法,如果还不够,就直接按字符串读取,然后用Float包装类实例化。 float精度是有限的,所以要根据具体需求,选择float还是double。
打开App,查看更多内容
随时随地看视频慕课网APP