我是java的新手,我创建了一个set方法书参考号,因此它只接受3个字符。我在下面尝试了我的代码,但它不对。
public void setRefNumber(String ref)
{
System.out.println("hello " + ref());
if(ref.length() ==3)
{
return;
}
System.out.println("Fail...Your reference number mis too short");
}
答案 0 :(得分:0)
class Main {
public static void main(String[] args) {
setRefNumber("123");
setRefNumber("1234");
setRefNumber("12");
setRefNumber("aa"); //to show you that you are not checking if the passed parameter is even a number currently
}
public static void setRefNumber(String ref) {
if(ref.length() >= 3) {
System.out.println("hello " + ref);
return;
} else {
System.out.println("Fail...Your reference number " + ref + " is too short");
}
}
}
输出:
hello 123
hello 1234
Fail...Your reference number 12 is too short
Fail...Your reference number aa is too short
试试here!
答案 1 :(得分:0)
ref
是变量而不是方法。因此ref()
应为ref
此外,您不必在当前实例中设置ref
字段
根据输出中的消息,如果3太短:
System.out.println("Fail...Your reference number mis too short");
你应该在条件下做<3
通常,在方法开始时或尽快处理错误情况允许将错误情况与名义情况分开(快速失败原则)。
这是一个例子:
private String ref;
public void setRefNumber(String ref) {
System.out.println("hello " + ref);
if(ref.length() < 3){
System.out.println("Fail...Your reference number mis too short");
return;
}
this.ref=ref;
}
答案 2 :(得分:0)
您的方法无需执行任何操作即可返回。在返回声明之前做你需要做的事情。此外,如果同时提供if和else部分,则在方法类型已经无效时,不必使用return。
public void setRefNumber(String ref) {
// it could be null too
if ( ref == null ) {
System.out.println("Cannot be null);
return;
}
System.out.println("hello " + ref);
if(ref.length() == 3) {
// set ref here
System.out.println("Success");
// return;
} else {
System.out.println("Fail...Your reference number is too short/long");
}
}
和其他人一样指出。 ref是变量而不是方法。使用ref而不是ref()。