Java 如何确定一个数字是以.5结尾还是以.0结尾
我只是想知道你们能不能帮我解决一个问题Java 如何确定一个数字是以.5结尾还是以.0结尾,java,module,numbers,Java,Module,Numbers,我只是想知道你们能不能帮我解决一个问题 double num = 2.0 if(num%1 != 0) { System.out.println("hi"); } else if(num%.5 != 0) { System.out.println("hi there"); } 基本上,我想确保用户输入的数字以.0或.5结尾…但我很难计算出来。上面的“解决方案”是我提出的,但似乎不起作用。任何指针?顺便说一句,我对编程比较陌生,因此任何帮助都会非常有用。操作符%处理浮点类型
double num = 2.0
if(num%1 != 0)
{
System.out.println("hi");
}
else if(num%.5 != 0)
{
System.out.println("hi there");
}
基本上,我想确保用户输入的数字以.0或.5结尾…但我很难计算出来。上面的“解决方案”是我提出的,但似乎不起作用。任何指针?顺便说一句,我对编程比较陌生,因此任何帮助都会非常有用。操作符
%
处理浮点类型float
和double
以及Java中的整数类型。任何以“.0”或“.5”结尾的数字都可以被0.5
整除
if (num % 0.5 == 0)
{
System.out.println("Ends in .0 or .5!");
}
试试这个
if (num - Math.rint(num) == 0) {
System.out.println("hi");
} else if (Math.abs(num - Math.rint(num)) == 0.5) {
System.out.println("hi there");
}
2.0
和2.5
一样,只能被0.5
整除。您需要%1==0.5
。