[英]check Equal and Not Equal conditons for double values
我在使用==
和!=
比较两个double values
时遇到了困难。
我创建了6个双变量并尝试在If
条件下进行比较。
double a,b,c,d,e,f;
if((a==b||c==d||e==f))
{
//My code here in case of true condition
}
else if ((a!=b||c!=d||e!=f))
{
//My code here in case false condition
}
虽然我的条件是a and b are equal
控制是否会转向else if
部分
所以我尝试了a.equals(b)
以获得相同的条件,这对我来说很好。
我在这里的查询是如何检查a not equal b
。 我在网上搜索过,但我发现只能使用!=
但不知怎的,这对我不起作用。
如果你使用的是double
(原始类型),则a
和b
必须不相等。
double a = 1.0;
double b = 1.0;
System.out.println(a == b);
如果.equals()
工作,你可能正在使用对象包装器类型Double
。 此外,相当于!=
和.equals()
是
!a.equals(b)
编辑
也,
else if ((a!=b||c!=d||e!=f))
{
//My code here in case false condition
}
(除非我遗漏了什么)应该是
else
{
//My code here in case false condition
}
如果你真的想要反转你的测试条件并再次测试,
else if (!(a==b||c==d||e==f))
或者使用De Morgan的定律
else if (a != b && c != d && e != f)
您可以使用
!a.equals(b) || !c.equals(d) || !e.equals(f)
您可以使用双数据类型
==,!= (you should try to use these first.. )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.