java - 转换的名称是什么(参数化类型 -> 原始类型)

标签 java jls

根据 JLS,转换(原始类型 -> 参数化类型)名为 Unchecked Conversion 。 反向转换的名称是什么(参数化类型 -> 原始类型)?

ArrayList<String> arrStr = new ArrayList<>();
ArrayList rawArrList = (ArrayList)arrStr;       // what is the conversion name?

最佳答案

这就是身份转换。该变量的类型为ArrayList。赋值右侧的值也是 ArrayList 类型(因为强制转换)。来自 JLS

A conversion from a type to that same type is permitted for any type.

请注意,这不是您所描述的

And what is the name of the reverse conversion (parameterized type -> raw type)?

与其对应的原始类型的参数化类型值是 widening reference conversion.

关于java - 转换的名称是什么(参数化类型 -> 原始类型),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28229192/

相关文章:

java - 正确覆盖 getPreferredScrollableViewportSize

java - 从数据库检索值并将其返回给调用方法

java - HashMap插入顺序

java - 使用位移位表示法定义 Java 常量

java - Object 类的 equals() 方法

javascript - iMacros 使用 EVAL 删除文本

java - 循环减少数万,然后数千,然后数百,然后数十

java - 如果操作数是较小的类型,JLS 在哪里指定加法的结果是 int?

java - 关注JLS词汇

java - Java 语言规范中哪里定义了运行时字节序?