1

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

我正在寻找一种方法来避免手动重写所有这些语句。是否有设置/插件/某事。其他在 Eclipse 中做这份工作?

谢谢你。

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,以防万一。

4

1 回答 1

3

假设这个示例代码:

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

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

这导致以下代码:

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

使用 Refactor > Inline ( Ctrl- Shift- I) 以减少不必要的变量声明。

于 2012-05-29T07:51:50.280 回答