2017-04-06 149 views
0

比方說,我有功能:驗證少數方法參數的乾淨方法是什麼?

void sayHello(String name, String surname); 

,我要確保這兩個參數是有效的。現在我做這種方式:

if (name == null) 
    throw new Exception("Name is invalid"); 
if (surname == null) 
    throw new Exception("Surname is invalid"); 

當我與sayHello(null, null);調用它,我得到關於無效name唯一信息。

有一次被警告兩次失誤一個乾淨的方式?通過乾淨,我的意思是沒有兩個標誌(或更多的情況下更多的參數)和許多if陳述?

這段代碼片段是用Java編寫的,但我想要一個通用的設計解決方案。

回答

0

我會建議建立與每個驗證的錯誤信息,但拋出一次,即所有驗證完成後。

如:

void someFunction(String param1, String param2, String param3) { 
    String error = ""; 

    if (invalid(param1)) { 
    error += "param1 is invalid"; 
    } 
    if (invalid(param2)) { 
    error += "param2 is invalid"; 
    } 
    if (invalid(param3)) { 
    error += "param3 is invalid"; 
    } 
    if (!error.equals("")) { 
    throw new Exception(error); 
    } 
} 
相關問題