日食中的条件简化

时间:2012-05-29 07:46:19

标签: java eclipse conditional ternary-operator

我继承了带有三元条件的代码。我们的编码标准(代码编写完成后引入)不允许这种风格。

我正在寻找避免手动重写所有这些语句的方法。有设置/插件/某事。还是在日食中为这份工作做准备?

谢谢。

PS。虽然我明确地寻找一个基于eclipse的解决方案,但我并不完全反对这个好的ruby脚本;)

编辑:Joachim Sauer的“按Ctrl + 1”方法适用于示例案例,但不适用于典型的eclipse生成的hashCode

int prime = 31;         
int result = 1;
result{Ctrl+1} = prime * result + ((id == null) ? 0 : id.hashCode());

在标记的位置按Ctrl + 1仅显示以下选项: Rename in file, rename in workspace, Extract local, Copy to criteria Editor, Extract to local variable

如果它能普遍起作用,那就太好了。更好的是,解决方案不涉及每次出现。

我在OpenSUSE 11上使用eclipse 3.7,如果这是相关的。

1 个答案:

答案 0 :(得分:3)

假设此示例代码:

    boolean someCondition = true;
    int a = someCondition ? 1 : 2;

将光标放在a之后,然后按 Ctrl - 1 。然后选择“用'if-else'替换条件”。

这导致了这段代码:

    int a;
    if (someCondition)
        a = 1;
    else
        a = 2;

使用重构>内联( Ctrl - Shift - I )适用于减少不必要的变量声明。