你好,我是编程新手作为标题,我想知道你如何找到任何给定数字的最后一位数字?例如,当输入 5.51123123 时,它将显示 3我只知道我应该使用字符我应该使用 while 循环吗?提前致谢
您可能希望执行以下操作:
double number = 5.51123123;
String numString = number + "";
System.out.println(numString.charAt(numString.length()-1));
当你执行数字 + " 时,Java 将数字类型从双精度"强制"为字符串,并允许您对其执行字符串函数。
numString.length()-1是因为 numString.length() 返回字符串中所有字符的计数,但 charAt() 索引到字符串中,并且它的索引从 0 开始,所以你需要执行 -1,否则你会得到一个 StringIndexOutOfBoundsException。
您可以简单地使用以下函数,并且可以相应地自定义数据类型,
private int getLastDigit(double val){
String tmp = String.valueOf(val);
return Integer.parseInt(tmp.substring(tmp.length()-1));
}
对浮点变量(或除 String
s 以外的任何其他数据类型)使用 charAt
。 (除非你为自己类定义了一个charAt
方法...
但是,您可以将该浮点数转换为字符串并检查charAt(str.length()-1)
。
将浮点变量转换为字符串并使用 charAt(strVar.length - 1)
.
double a=5.51123123;
String strVar=String.valueOf(a);
System.out.print(strVar.charAt(strVar.length -1);
Double doubleNo = 5.51123123;
String stringNo = doubleNo.toString();
System.out.println(stringNo.charAt(stringNo.length()-1));