Java Java Data Structures Getting There Type Casting

farai ted mandoreba
farai ted mandoreba
12,855 Points

need help on this one

Challenge Task 1 of 2 The method getTitleFromObject will be called and passed a String and/or a com.example.BlogPost. For this first task, return the object obj type casted as a String if it is in fact a String.

I've included BlogPost.java for your reference only.

com/example/BlogPost.java
import com.example.BlogPost;
public class TypeCastChecker {

  public static boolean HINT_1_ENABLED = false;
  public static boolean HINT_2_ENABLED = false;

  public static String getTitleFromObject(Object obj) {

    String result = "";
    BlogPost nowa;
    if (obj instanceof String) {
      result = (String) obj;
    } else if (obj instanceof BlogPost) {
      nowa = (BlogPost) obj;
      result = nowa.getTitle();
    }
    return result;
  }
}
TypeCastChecker.java
import com.example.BlogPost;

public class TypeCastChecker {
  /***************
  I have provided 2 hints for this challenge.
  Change `false` to `true` in one line below, then click the "Check work" button to see the hint.
  NOTE: You must set all the hints to false to complete the exercise.
  ****************/
  public static boolean HINT_1_ENABLED = false;
  public static boolean HINT_2_ENABLED = false;

  public static String getTitleFromObject(Object obj) {
    // Fix this result variable to be the correct string.
    String result = "";
    return result;
  }
}
farai ted mandoreba
farai ted mandoreba
12,855 Points

if i dont get past this question, i am leaving this java track . its now annoying

4 Answers

farai ted mandoreba
farai ted mandoreba
12,855 Points

can craig help on this one , its no longer learning but confusing, what is the correct answer, what does he want

The solution seems to be exactly analog to your example:

Have you tried entering (or copy/pasting) exactly the same as in the example you've given (first code snippet in your post)?

I think we should avoid giving direct solutions, but you wrote that you tried many options, so I guess it's ok now for me to give a possible answer (I hope).

This worked out for me:

import com.example.BlogPost;

public class TypeCastChecker {
  /***************
  I have provided 2 hints for this challenge.
  Change `false` to `true` in one line below, then click the "Check work" button to see the hint.
  NOTE: You must set all the hints to false to complete the exercise.
  ****************/
  public static boolean HINT_1_ENABLED = false;
  public static boolean HINT_2_ENABLED = false;

  public static String getTitleFromObject(Object obj) {
    // Fix this result variable to be the correct string.
    String result = "";
    BlogPost bp;
    if (obj instanceof String) {
        result = (String) obj;
    }else if (obj instanceof BlogPost) {
        bp = (BlogPost) obj;
      result = bp.getTitle();
    }
    return result;
  }
}

Actually it is the very same as in your first code snippet... and I just tried it, and it worked (Task 1 of 2). Not for you?

farai ted mandoreba
farai ted mandoreba
12,855 Points

task one was not not a problem, nut thank you so much,

Why do you write "Challenge Task 1 of 2" on top of your post then? You should have mentioned that your problem is in Task 2 of 2 then