0

Eclipse 未找到代码完成的正确变量,如下所示。

int i = 0;
f(xyz);    // f takes an int but eclipse won't fill it with i.
4

1 回答 1

1

在“窗口”>“首选项”>“Java”>“编辑器”>“内容辅助”下,确保设置了“填充方法参数并显示猜测参数”并选择了“插入最佳猜测参数”。


编辑:

我在我的 Eclipse 中尝试了这个(版本:Helios Service Release 1 - Build id:20100917-0705):

public class BestGuessedParameter {
    static int xyz = 1;
    static void f(final int xyz) {
    }
    public static void main(final String[] args) {
        final int i = 0;
        f/*cursor here*/
    }
}

在我输入 之后f,我点击空格并选择f(xyz),Eclipse 确实在(突出显示的)、和的弹出菜单中提供f(i)了突出显示的和。是默认值。iixyz0i

我找不到有关 Eclipse 如何选择“最佳猜测参数”的任何信息(我不知道在 Eclipse 源代码中的位置)。我猜 Eclipse 基于类型、名称和可见性“猜测”,并且 Eclipse 认为有比您的局部变量更好的匹配。也许如果局部变量在类型和名称上更接近,它会是一个更好的匹配?

于 2010-12-22T02:49:13.490 回答