将原始类型转换为泛型的重构
将原始类型转换为泛型 重构旨在将现有未使用泛型的代码转换为支持泛型的代码。 重构会分析现有代码,并为每个原始类型创建安全且一致的参数类型。
安装 Additional Java Refactorings 插件
此功能依赖于 Additional Java Refactorings 插件,您需要安装并启用。
按 Ctrl+Alt+S 打开设置,然后选择 。
打开 Marketplace 选项卡,找到 Additional Java Refactorings 插件,然后点击 安装 (如果出现提示,请重启 IDE)。
运行“将原始类型转换为泛型”重构
示例
IntelliJ IDEA 尝试生成尽可能从 Java 角度来看正确的代码。 换句话说,每个上下文引入了一些类型限制,重构生成不与现有上下文矛盾的最佳可能类型(在我们的例子中是 <String>)。
之前 | 之后 |
|---|---|
public void method() {
List list = new LinkedList();
list.add("string");
}
|
public void method() {
List<String> list = new LinkedList<String>();
list.add("string");
}
|
将原始类型转换为泛型重构
请使用此对话框指定 将原始类型转换为泛型 重构的选项。
条目 | 描述 |
|---|---|
删除废弃转换 | 如果选中此选项,IntelliJ IDEA 会分析参数类型转换是否因重构而改变。 如果生成的参数类型与过时的类型相似,则将删除强制转换语句。 |
离开对象形参化类型生 | 选中此选项以将那些包含 |
执行详尽的搜索 | 选中此选项以在所有节点中执行搜索。 |
Generify对象 | 选中此选项以将 |
产生通配符类型 | 选中此选项以尽可能生成通配符类型(如表达式 |
保存原始数组 | 如果选中此复选框,数组不会更改为带有参数化类型的数组。 否则,数组将被转换为参数化类型。 清除此复选框可能有风险,并导致代码无法编译。 |
最后修改日期: 2025年 4月 24日
