From 80e0f8b2e6760da4423bec12e61570898a1f4c0c Mon Sep 17 00:00:00 2001 From: Ulisses Lima Date: Wed, 7 Jun 2023 12:20:25 -0300 Subject: [PATCH] check instanceof Movie --- .../baeldung/equalshashcoderecords/Movie.java | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/core-java-modules/core-java-records/src/main/java/com/baeldung/equalshashcoderecords/Movie.java b/core-java-modules/core-java-records/src/main/java/com/baeldung/equalshashcoderecords/Movie.java index e94638e8b5..9ee0f1ac95 100644 --- a/core-java-modules/core-java-records/src/main/java/com/baeldung/equalshashcoderecords/Movie.java +++ b/core-java-modules/core-java-records/src/main/java/com/baeldung/equalshashcoderecords/Movie.java @@ -4,20 +4,24 @@ import java.util.Objects; record Movie(String name, Integer yearOfRelease, String distributor) { -@Override -public boolean equals(Object other) { - if (this == other) { - return true; - } - if (other == null) { + @Override + public boolean equals(Object other) { + if (this == other) { + return true; + } + if (other == null) { + return false; + } + if (!(other instanceof Movie)) { + return false; + } + + Movie movie = (Movie) other; + if (movie.name.equals(this.name) && movie.yearOfRelease.equals(this.yearOfRelease)) { + return true; + } return false; } - Movie movie = (Movie) other; - if (movie.name.equals(this.name) && movie.yearOfRelease.equals(this.yearOfRelease)) { - return true; - } - return false; -} @Override public int hashCode() {