gpt4 book ai didi

java - 为什么 Eclipse 不在方法参数中使用菱形运算符

转载 作者:行者123 更新时间:2023-12-02 09:36:23 26 4
gpt4 key购买 nike

我有一个这样的类(class):

public class TestObject
{
List<String> data;

public List<String> getData()
{
return data;
}

public void setData(List<String> inputData)
{
data = inputData;
}
}

我检查了首选项 -> Java -> 编辑器 -> 保存操作 -> 配置 -> 不必要的代码 -> 删除冗余类型参数(1.7 或更高版本)中的选项

现在我创建一个主类:

public class Main 
{
public static void main(String[] args)
{
TestObject o = new TestObject();
o.setData(new ArrayList<String>());
}
}

现在我保存文件。

我本希望 Eclipse 在保存文件时删除 setter 中的“String”类型参数,但它保留在那里。

有什么想法为什么会出现这种情况吗(是否有原因,或者我是否错过了必须启用的设置?)

谷歌

最佳答案

它仅删除如下代码:

List<String> yourList = new ArrayList<String>()
to
List<String> yourList = new ArrayList<>()

如果这是在像您的代码一样的方法中传递的,则 Eclipse 将不会删除它。

不确定,但从下面的错误来看,它只有在类型参数冗余时才会被删除。

Reduce type arguments to diamond <> (1.7 or higher)
o Never o Only if redundant

参见[1.7][clean up][quick assist] Remove unnecessary type arguments (was: Suggest to use <> where applicable)

关于java - 为什么 Eclipse 不在方法参数中使用菱形运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57472994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com