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 trialGem Knight
4,779 PointsI need help
I am on the course java objects and I really need help. Somebody please.
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.indexOf(0) != 'm' ||
fieldName.indexOf(1) >= 0 != Character.isUpperCase(fieldName.indexOf(1)))
throw new IllegalArgumentException("Invalid fieldname entered.");
}
return fieldName;
}
}
4 Answers
Jeremy Hill
29,567 PointsYou may be right, it seemed like it would have the same result. I went ahead and ran the challenge and this code worked for me:
public class TeacherAssistant {
public static String validatedFieldName(String fieldName) {
if(fieldName.charAt(0) != 'm' || !Character.isUpperCase(fieldName.charAt(1)))
throw new IllegalArgumentException("Invalid fieldname entered.");
else
return fieldName;
}
}
Jeremy Hill
29,567 Pointstry replacing your indexOf() with charAt() in your if statement and you don't need the >= 0 in there.
Jeremy Hill
29,567 Pointsif(fieldName.chartAt(0) != 'm' || Character.isLowerCase(fieldName.charAt(1)))
throw new IllegalArgumentException("Invalid fieldname entered.");
else
return fieldName;
I didn't run this code but I believe it will work.
Gem Knight
4,779 PointsSorry did not work
Jeremy Hill
29,567 PointsI just realized that I typed the first charAt wrong: I typed it chartAt(). Try it again without the extra 't'.
bzfchen
6,484 PointsI don't think Character.isLowerCase(char) is equivalent to !Character.isUpperCase(char) in all cases.
if (fieldName.charAt(0) != 'm' || !Character.isUpperCase(fieldName.charAt(1))) throw new IllegalArgumentException();
return fieldName;
Gem Knight
4,779 PointsGem Knight
4,779 PointsIt worked