การเอาชนะวิธี java เท่ากับ () วิธี - ไม่ทำงาน?
ฉันพบปัญหาที่น่าสนใจ (และน่าผิดหวังมาก) กับequals()วิธีการในวันนี้ซึ่งทำให้สิ่งที่ฉันคิดว่าเป็นคลาสที่ผ่านการทดสอบที่ดีและทำให้เกิดข้อผิดพลาดซึ่งทำให้ฉันใช้เวลานานมากในการติดตาม เพียงเพื่อความสมบูรณ์ฉันไม่ได้ใช้ IDE หรือดีบักเกอร์ - เป็นโปรแกรมแก้ไขข้อความแบบเก่าที่ดีและ System.out เวลามี จำกัด มากและเป็นโครงการโรงเรียน อย่างไรก็ตาม - ผมได้รับการพัฒนารถเข็นพื้นฐานซึ่งจะประกอบด้วยArrayListของBookวัตถุ เพื่อที่จะใช้addBook(), removeBook()และhasBook()วิธีการของรถเข็นที่ฉันต้องการที่จะตรวจสอบว่ามีอยู่แล้วในBook Cartฉันไปแล้ว - public boolean equals(Book b) { ... // More code here - null checks if (b.getID() == this.getID()) return true; else return false; } ทั้งหมดทำงานได้ดีในการทดสอบ ฉันสร้างวัตถุ 6 ชิ้นและเติมข้อมูล ดำเนินการเพิ่มลบลบมี () จำนวนมากCartและทุกอย่างทำงานได้ดี ฉันอ่านว่าคุณสามารถมีequals(TYPE …