java - 是否可以在没有 If 的情况下检查接收到的字段是否为空或 Null

标签 java if-statement null

我收到字段列表。近约 60 个字段。

从中我必须检查 50 个字段是否为空或为空,如果不是,那么我还必须将它们添加到数据库表中。

现在我正在使用 if 条件手动执行此操作。我只是想这样做,还没有实现。

还有比它更好的选择吗?

我的代码:

if(ValidateData.checkIsNullOrEmpty(command.getSubscriptionStartYear())){

}
if(ValidateData.checkIsNullOrEmpty(command.getSubscriptionPeriod())){

}
if(ValidateData.checkIsNullOrEmpty(command.getExpectedArrivalTimeOfIssues())){

}
.....
.....

if(ValidateData.checkIsNullOrEmpty(command.getMaxNoOfClaims())){

}

这里command是从源接收数据的类。

这里ValidateData是一个:

它的方法定义:

public static boolean checkIsNullOrEmpty(Integer arg){
    if(arg != null) return true;
    return false;
}

public static boolean checkIsNullOrEmpty(String arg){
     if(!arg.trim().equals("") || !arg.trim().equals(" ") || arg.trim() != null) return true;
     return false;
}

如果有人指导我或建议我,还有更好的选择吗?

最佳答案

创建一个像这样的函数:

public static bool AllNull(object... something)
{
    for(var v :something)
       if(v!=null){
         if(v instanceof Integer)
           // do integer validation
       }else
         //Err msg
}

然后你可以这样调用它:

if (AllNull(obj1, obj2, obj3, obj4, obj5, obj6))
{
    // ...
}

如果你想具体一点,可以将字符串和整数分开,并为你需要的每种类型创建单独的函数,如下所示

编辑

据我从你的评论中了解到,你不知道varargs

varargs are useful for any method that needs to deal with an indeterminate number of objects. One good example is String.format.

关于java - 是否可以在没有 If 的情况下检查接收到的字段是否为空或 Null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27167284/

相关文章:

java - 图像文件无法在 2D Java 游戏中加载

java - 优化在数字中添加零填充

javascript - 我对 .splice() 做错了什么

C if 语句被跳过

mysql - 如果字段为空,Group_concat 不同会使我的查询失败

java - 电子邮件以 0 作为值保存在数据库中

java - 使用Java提交表单

javascript - 我应该如何处理嵌套条件语句?

ios - SWRevealViewController 委托(delegate) nil

amazon-ec2 - 使用 AWS 空条件来防止空标签或丢失标签?