Java Java Data Structures Organizing Data Comparable

Leo Marco Corpuz
Leo Marco Corpuz
18,975 Points

Interface challenge part 2

I forgot what it means to cast in this challenge. It asks to cast the object passed in to a com.example.BlogPost?

com/example/BlogPost.java
package com.example;

import java.util.Date;

public class BlogPost implements Comparable{
  private String mAuthor;
  private String mTitle;
  private String mBody;
  private String mCategory;
  private Date mCreationDate;

  public BlogPost(String author, String title, String body, String category, Date creationDate) {
    mAuthor = author;
    mTitle = title;
    mBody = body;
    mCategory = category;
    mCreationDate = creationDate;
  }

  public String[] getWords() {
    return mBody.split("\\s+");
  }
  public int compareTo(Object obj){

  return 1;
  }

  public String getAuthor() {
    return mAuthor;
  }

  public String getTitle() {
    return mTitle;
  }

  public String getBody() {
    return mBody;
  }

  public String getCategory() {
    return mCategory;
  }

  public Date getCreationDate() {
    return mCreationDate;
  }
}

1 Answer

Hi, you cast when u want to give an object the methods/properties of another object. Object is a super class. in this example u need to cast another object, let’s call this variable “other” to be of type BlogPost.
the working cold is this :

  public int compareTo(Object obj) {

    BlogPost other = (BlogPost) obj;
    if(equals(other) {
      return 0;

    }
    return 1;
  }