Qi T 2017-08-09 03:23 采纳率: 0%
浏览 3226

大量的if,如何优化代码

bean里大量的相同的字段,每个字段都有isChecked和content属性,所以需要每一个都判断一遍是否选中,选中再显示内容
稍微举下例子

 public class FittingsInfo {
    private Field companyCn;//中文公司名
    private Field companyEn;//英文公司名
    private Field tel;//电话
    private Field orderNum;//订单号
        ...
        ...
        }
public class Field {
    private boolean isChecked;
    private String content;
        ...
        ...

setter getter constructor都省略了
然后


        if (fittingsInfo.getCompanyCn().isChecked()) {
           ...
        }
        if (fittingsInfo.getCompanEn().isChecked()) {
           ...
        }

里面逻辑全一样,少说得有三十多个字段,就一个判断几百行出去了....有没有什么办法简化代码呢

  • 写回答

4条回答 默认 最新

  • T_world 2017-08-09 03:39
    关注

    我的想法是可以在FittingsInfo类里准备一个boolean类型的数组,写一个方法填充这个数组,数组的每个元素代表一个字段,然后将这个数组返回出去,然后判断的时候就可以用循环了,当然前提是字段的顺序一定要和数组对应好

    评论

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧