2016-11-26 46 views
-2

我是java的新手,我创建了一套方法手册参考号,因此它只接受3个字符。我在下面尝试了我的代码,但它不正确。Java的设置方法

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"); 
} 
+2

** print()**在你的print语句中是什么? – PVR

回答

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!

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; 

} 
-1

你的方法返回。在回复声明前做你必须做的事。此外,如果您同时提供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()。