问:public class TeacherAssistant {
public static String validatedFieldName (String fieldName ){ //应该验证以下内容:// 1.成员字段必须以'm'开头// 2.字段名称中的第二个字母必须大写以确保camel-casing //注意:要检查是否不相等,请使用!=符号。例如:3!= 4字符串mTeacherassistant = fieldName ;//成员字段以字母'm'开头 Boolean mFieldLetterM = fieldName 。startsWith ('m' );
//对于大写字母第二个位置,为true或false
boolean mFieldUpperCase = Character 。isUpperCase (fieldName的。的charAt (1 )); if (!mFieldLetterM || !mFieldUpperCase ){抛出新的IllegalArgumentException (“字段必须以' m '和CamelCasing开头” );} }返回字段名; } }
答:公共 类 TeacherAssistant {
public static String validatedFieldName (String fieldName ){ //您从未使用过:String mTeacherassistant = fieldName; 布尔值mFieldLetterM = fieldName 。charAt (0 )== 'm' ; boolean mFieldUpperCase =字符。isUpperCase (fieldName的。的charAt (1 )); 如果(mFieldLetterM &&
mFieldUpperCase ) {
返回fieldName ; } //在此插入不必要的括号}抛出新的IllegalArgumentException (“字段必须以'm'和CamelCasing开头” );} }
首先,您需要使用charAt()方法检查'm'是否为第一个。startsWith()处理字符串,但是我们只关心一个字符
代替|| 我们要使用&&,因为如果两个条件都不成立,那么我们想抛出该错误。
在结尾处,您也有一个不必要的括号
您还创建了一个变量,但从未使用过。只是想指出这一点
最后,在我上面发布的代码中,我做了一些修改,因为代码检查器不允许我通过。不知道为什么。