有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

if语句java if action和return

我想编写干净、快速的代码来评估某些条件,如果条件为true,则执行操作并返回该条件值

到目前为止,我有以下选择:

选项1:

public boolean method() {
    if (...condition...) {
        action();
        return true;
    } else {
        return false;
    }
}

选项2:

public boolean method() {
    boolean actionNecessary = ...condition...;
    if (actionNecessary) {
        action();
    }
    return actionNecessary;
}

选项3:

 public boolean method() {
        return ifDoReturn(...condition..., () -> {
            action();
        });
    }

与助手方法:

public static boolean ifDoReturn(boolean condition, Runnable action) {
    if (condition) {
        action.run();
    }
    return condition;
}

第一个选项最长,第二个选项较短,速度也较快,第三个选项最短,但很复杂,没有编译器优化,速度也较慢

谢谢你的帮助


共 (1) 个答案

  1. # 1 楼答案

    “过早优化是万恶之源。”<唐纳德·克努斯

    我相信你想得太多了。JVM足够聪明,可以处理微不足道的“微观优化”。在简单的逻辑中,人们通常应该遵循团队制定的软件开发标准。无论你采用何种方法,你都很难找到显著的性能提升。如果代码经常被调用,那么即时编译器(“JIT”)无论如何都会将其编译为目标代码

    所有这些都表明,在我看来,选项2是最明确的

    值得一提的是,here是对Java优化技术的深入研究;最重要的是,涵盖优化的时间和原因