0

我有这样的课:

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”类型参数,但它留在那里。

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

谷歌

4

1 回答 1

1

它只删除如下代码:

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

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

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

将类型参数减少为菱形 <>(1.7 或更高版本)
o 从不 o仅在多余时

请参阅[1.7][clean up][quick assistant] 删除不必要的类型参数(原为:建议在适用的情况下使用 <>)

于 2019-08-13T07:34:41.893 回答