Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Java Java Objects Creating the MVP Conference Registration Assistant

szabolcs lenkovits
szabolcs lenkovits
1,059 Points

I got stuck here for some reason I cant really figure out what I should do here :(

I got stuck on this exercise, it seems to be pretty easy but still somehow I cant figure out how I can compare if my first letter is between the letters it has to be between. Thanks for the help

ConferenceRegistrationAssistant.java
public class ConferenceRegistrationAssistant {

  /**
   * Assists in guiding people to the proper line based on their last name.
   *
   * @param lastName The person's last name
   * @return The line number based on the first letter of lastName
   */
  public int getLineNumberFor(String lastName) {
    char firstletter=lastName.charAt(0);
    if ('firstletter' =< 'N'); {
      lineNumber=1;
    } else {
     int lineNumber=2;
    }

    int lineNumber = 0;

    return lineNumber;
  }

}
Example.java
public class Example {

  public static void main(String[] args) {
    /*
      IMPORTANT:  You can compare characters using <, >. <=, >= and == just like numbers
     */
    if ('C' < 'D') {
      System.out.println("C comes before D");
    }

    if ('B' > 'A') {
      System.out.println("B comes after A");
    }

    if ('E' >= 'E') {
      System.out.println("E is equal to or comes after E");
    }

    // This code is here for demonstration purposes only...
    ConferenceRegistrationAssistant assistant = new ConferenceRegistrationAssistant();
    /*
      Remember that there are 2 lines.
      Line #1 is for A-M
      Line #2 is for N-Z
     */
    int lineNumber = 0;
    /*
      This should set lineNumber to 2 because
      The last name is Zimmerman which starts with a Z.
      Therefore it is between N-Z
     */
    lineNumber = assistant.getLineNumberFor("Zimmerman");

    /*
      This method call should set lineNumber to 1, because 'A' from "Anderson" is between A-M.
     */
    lineNumber = assistant.getLineNumberFor("Anderson");

    /*
      Likewise Charlie Brown's 'B' is between 'A' and 'M', so lineNumber should be set to 1
     */
    lineNumber = assistant.getLineNumberFor("Brown");
  }

}

1 Answer

Boban Talevski
Boban Talevski
24,793 Points

You have a few problems here. Check the comments below:

  public int getLineNumberFor(String lastName) {
    char firstletter=lastName.charAt(0);
    if ('firstletter' =< 'N'); { // less than or equals should be <= instead of =<
// you should really compare if it's <= 'M', not 'N'. Or just < 'N'
// you should remove the semicolon as it shouldn't be there, the statement continues after the if condition
      lineNumber=1;
    } else {
     int lineNumber=2; // remove the declaration here (int), the variable should be declared and initialized
// at the beginning of the method
    }

    int lineNumber = 0; // there's no point declaring and initializing the variable lineNumber here
// it's like throwing away all the checks you've done above, cause whatever happens up there, you're setting it to 0
// And this variable should be declared at the beginning of the method as the above comment says

    return lineNumber;
  }

This is what the code should look like:

  public int getLineNumberFor(String lastName) {
    int lineNumber = 0;

    char firstletter=lastName.charAt(0);
    if (firstletter <= 'M') {
      lineNumber=1;
    } else {
      lineNumber=2;
    }

    return lineNumber;
  }
szabolcs lenkovits
szabolcs lenkovits
1,059 Points

Thanks for the help it was really helpful, and I am happy that at least I was somewhat close to the answer :D All the best!!! Thanks again!!

Boban Talevski
Boban Talevski
24,793 Points

You are welcome and happy coding! :)