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 (Retired) Delivering the MVP Validation

I don't know what is wrong here, i get an error mesasage of bad operand type String for unary operator '!'

I know what the error is, i don't know to fix it

TeacherAssistant.java
public class TeacherAssistant {

  public static String validatedFieldName(String fieldName) {
    // These things should be verified:
    // 1.  Member fields must start with an 'm'
    // 2.  The second letter in the field name must be uppercased to ensure camel-casing
    // NOTE:  To check if something is not equal use the != symbol. eg: 3 != 4
    if(!fieldName) {
      throw new IllegalArgumentException();
    }

    return fieldName;
  }

}

Hey,

The "!" operator is for boolean variants.

Try this :

If (fieldName == null) .....

1 Answer

Hello, I think I answered your other question, but just incase. Try the following code below.

public class TeacherAssistant {

  public static String validatedFieldName(String fieldName) {
    // These things should be verified:
    if (fieldName.charAt(0) != 'm' || !Character.isUpperCase(fieldName.charAt(1)) ) {
      throw new IllegalArgumentException("Illegal field name");
    }
    // 2.  The second letter in the field name must be uppercased to ensure camel-casing
    // NOTE:  To check if something is not equal use the != symbol. eg: 3 != 4
    return fieldName;
  }
}

You are first checking to make sure that the char 'm' is the first char in the string, then you are checking to make sure that the second is capitalized. If either of these conditions are not met than you are throwing the exception.

Thanks, let me know if this helps!

ahh you made it so much easier to understand! you have definitely helped! thank you and happy coding!