从方法中读取 return 个值

Reading return values from Method

我有一个方法,我在其中调用不同的方法来获取值。

public String processMe(HttpServletRequest request, HttpServletResponse response) throws SomeException {
..
validate(request,Number,Date); 
//How do I read values here ..
//I would like to read Number and Date from validate??
..
}

验证方法将从数据库返回一些值。

private String[] validate(HttpServletRequest request,String Number,String Date) {
 ..
 //My logic which get me some values from database and returns
 ..
 values[0]=something;
 values[0]=somethingElse;
 ..
 return values;  //This is returning values..
 }

您已经 return 了一个字符串数组。因此,将 Number、Date 添加到数组的末尾并将 return 值分配给变量。然后您可以访问编号和日期。

例如:String[] validated = validate(request,Number,Date);

private String[] validate(HttpServletRequest request,String Number,String Date) {
 ..
 //Add the Number, Date to the array
 values[0]=Number;//array index can be anything you like(you can add them to the end of the array)
 values[1]=Date;
 ..
 return values;  //This is returning values..
 }

现在您可以像这样访问数组了。

public String processMe(HttpServletRequest request, HttpServletResponse response) throws SomeException {

    String[] values = validate(request,Number,Date);

    System.out.println(values[0]);//values[0] will contain the Number
    System.out.println(values[1]);//values[1] will contain the Date
}

使用数据传输对象。 使用方法中所有可能的 return 值创建一个 ViewModel Class,创建它的一个实例并为它们分配值,return ViewModel 的实例。

甚至将您的 return 类型的方法设为 ViewModel Class

例子

Class ReturnValues
{
String value1,value2;
int Value3; //etc
}

你的方法看起来像

 private ReturnValue validate(HttpServletRequest request,String Number,String Date) {
     ..
     //your logic which get me some values from database and returns
     ..
     ReturnValue rt=new ReturnValue();=
     rt.value1=something;
     rt.value2=somethingElse;
     ..
     return rt;  //This is returning values..
     }