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

Syntax Errors

Why is it that I can run the program and everything is fine. Then I add some code in a completely different place and syntax errors will come up from the last code that previously ran syntax error free?

Please send you code to help. If i find a solution, i will awnser agian.

Here is the code, Everything was fine until I started to add the if statements.

import java.io.Console;

public class TreeStory {

public static void main(String[] args) {
    Console console = System.console();
    /*  Some terms:
        noun - Person, place or thing
        verb - An action
        adjective - A description used to modify or describe a noun */
  String ageAsString = console.readLine("How old are you?  ");
  int age = Integer.parseInt(ageAsString);
  if (age < 13) {
    // Enter exit code
  console.printf("Sorry you must be at least 13 to use this program.\n");
  System.exit(0);   }

  String name = console.readLine("Enter a name:  ");
  String adjective = console.readLine("Enter an adjective:  ");
  String noun = console.readLine("Enter a noun:  ");
  if (noun.equalsIgnoreCase("dork") || 
      noun.equalsIgnoreCase("jerk")) }


    console.printf("That language is not allowed.  Exiting \n\n");
    System.exit(0);

  String adverb = console.readLine("Enter an adverb:  ");
  String verb = console.readLine("Enter a verb ending with -ing:  ");

  console.printf("My Tree Story:\n------------\n");
  console.printf("%s is a %s %s.", name, adjective, noun);
  console.printf("They are always %s %s.", adverb, verb); }

I dont have a idea, but are you on the variable challange? If yes, then the statements might not work (i have no idea im bad at this but is just my speculation) .-.

1 Answer

Your second if-block has some errors.

  • it has a closing curly brace instead of an opening one after the condition and before the statement
  • it's missing a closing curly brace after the statement

It should be:

if (noun.equalsIgnoreCase("dork") || noun.equalsIgnoreCase("jerk")) {
    console.printf("That language is not allowed.  Exiting \n\n");
    System.exit(0);
}

Even though the code following that if-block was written previously and was running fine then, such error makes that part of your code unreadable now so it throws some syntax error. Hope that helps

Thank you so much for your help. I did figure out that it was the brackets.

You're welcome. Glad to hear you did figure it out :)