【问题标题】:Reading return values from Method从 Method 中读取返回值
【发布时间】:2015-12-16 09:18:19
【问题描述】:

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

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??
..
}

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..
 }

【问题讨论】:

  • 只需将processMe()方法返回语句更新为return validate(request,Number,Date);

标签: java arrays methods return


【解决方案1】:

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

例如:String[] 已验证 = 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
}

【讨论】:

    【解决方案2】:

    使用数据传输对象。 使用您的方法中所有可能的返回值创建一个 ViewModel 类,创建它的一个实例并为其分配值并返回 ViewModel 的实例。

    甚至将您的方法返回类型设为 ViewModel 类

    例子

    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..
         }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-13
      • 1970-01-01
      • 1970-01-01
      • 2019-04-22
      • 2011-04-27
      • 1970-01-01
      相关资源
      最近更新 更多