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

"Reached end of file while parsing" error.

I have no idea where I am missing a "{" but it would be helpful if someone could show me :P Also it says it's on line 41 if that helps at all lol.

public class Example {

  public static void main(String[] args) {
    // Your amazing code goes here...
      System.out.println("We are making PEZ");
      System.out.printf("FUN FACT: There are %d PEZ allowed in every dispenser %n",
                      PezDispenser.MAX_PEZ);
      ezDispenser dispenser = new PezDispenser("Yoda");
      System.out.printf("The dispenser is %s %n", 
                      dispenser.getCharacterName()
                     );
    if (dispenser.isEmpty()) {
        System.out.println("Dispenser is empty");
    }

      System.out.println("Filling the dispenser with delicious PEZ....");
      dispenser.fill();
    if (!dispenser.isEmpty()) {
      System.out.println("Dispenser is full");
    }
    while(dispenser.dispense()) {
      System.out.println("Chomp!"); 
    }
    if (dispenser.isEmpty()) {
      System.out.println("Ate all the PEZ");
    }
    dispenser.fill(4);
    dispenser.fill(2);
    while (dispenser.dispense()) {
      System.out.println("Chomp!!");
    }
    try {
      dispenser.fill(400);
      System.out.println("This will never happen");
    } catch(IllegalArgumentException iae) {
      System.out.println("Whoa there!");
      System.out.println("The error was %s",
                        iae.getMessage());
  }

}

1 Answer

Jason Anders
MOD
Jason Anders
Treehouse Moderator 145,860 Points

Hi Arran,

If you go by indentation (which is why it's so important), it looks like you haven't closed the catch block

    try {
      dispenser.fill(400);
      System.out.println("This will never happen");
    } catch(IllegalArgumentException iae) {
      System.out.println("Whoa there!");
      System.out.println("The error was %s",
                        iae.getMessage());
    } // This one needs to be added to close the `catch` block

  } // This brace closes the `main` method

}  // This one closes the `Class`

Nice job otherwise! :) :dizzy:

Thank you! :D