Netbeans 6.5 مشكلة تصحيح
-
20-09-2019 - |
سؤال
أنا أخطب خطوط التعليمات البرمجية التالية
if (var.getvar2() != var3) {
var4.add(var);
} else {
isNeeded= true;
if (incomingPublishedDate.compare(modifiedDate) < 0) {
importNeeded = true;
} else {
var4.add(var);
}
}
هنا var.getvar2()
و var3
هي من النوع Long
وبعد أثناء تصحيح الأخطاء، عندما يذهب الشرط
10000 != 10000
ال if
يجب تقييمه إلى false
. وبعد ولكن من الأول if
, ، ستذهب الخطوة التالية إلى
var4.add(var);
والخطوة التالية يذهب إلى var4.add(var);
هل هذا علة netbeans؟ أم أنها مع Long
مقارنة.
انا استخدم Netbeans IDE 6.5.
المحلول
لا يمكنك مقارنة الكائنات حسب القيمة. ستكون هذه المقارنة صحيحة فقط إذا كانت المراجع مقارنة بالرجوع إلى نفس الكائن. بدلا من ذلك استخدام:
if (! var.getvar2().equals(var3)) {
...
}
لا تنتمي إلى StackOverflow