java - 条件语句 :dead code

标签 java if-statement dead-code

我正在开发一个 JavaEE 应用程序,我有以下方法:

public String alterar_data_ato_med (int cod_ato, GregorianCalendar nova_data) {
    AtoMedico a=em.find(AtoMedico.class,cod_ato);
    Medico m=a.getmedico();
    Utente u=a.getutente();
    GregorianCalendar today=new GregorianCalendar();
    if(a==null){
        return "Ato Médico inexistente!";
    }else{
        if(m.getAgenda_atos().contains(nova_data)||m.getAgenda_consultas().contains(nova_data)){
            return "Médico indisponível";
        }else{
            if(u.getAgenda().contains(nova_data)||nova_data.before(today)){
                return "Data indisponível!";
            }else{
                GregorianCalendar antiga_data=a.getData_ato_med();
                a.setData_ato_med(nova_data);
                m.getAgenda_atos().remove(antiga_data);
                u.getAgenda().remove(antiga_data);
                return "Data do ato médico alterada!";
            }
        }
    }
}

第一个 if-else 语句似乎是“死代码”。有人可以帮我理解为什么吗?

最佳答案

a 在第一个 if 语句中不能为 null。如果是,您的代码将在 Medico m=a.getmedico() 行抛出一个 NullPointerException

关于java - 条件语句 :dead code,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27863748/

相关文章:

java - Red Hat Developer Studio 12 中的 JDBC 驱动程序模板

java - Hibernate - 通过列中的双值查找对象

c - 检测 C 中未使用的函数

java - 0's and 1' s 的字符串作为位文件

java - 将整数添加到节点内的数组中

if-statement - always_comb 'if' 错误中的 SystemVerilog 'not purely combinational logic' 语句

PHP - 退出 IF block

javascript - 在条件语句中提升函数

c - switch 语句中的死代码消除

java - 如何清理死代码/无用代码