Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Java Java Objects (Retired) Delivering the MVP Validation

Sohaib Rashid
Sohaib Rashid
627 Points

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;
  }

}
Dovev Golan
Dovev Golan
425 Points

Hey,

The "!" operator is for boolean variants.

Try this :

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

1 Answer

Rob Bridges
seal-mask
.a{fill-rule:evenodd;}techdegree seal-36
Rob Bridges
Full Stack JavaScript Techdegree Graduate 35,459 Points

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!

Sohaib Rashid
Sohaib Rashid
627 Points

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