127 我正在阅读一些JMockit示例并找到以下代码: final List<OrderItem> actualItems = new ArrayList<~>(); 通用标识符中的代字号是什么意思?我知道这是一元按位NOT运算符,但在这里看不到操作数。 另外,我尝试编译它并得到一个错误。我只是想念什么吗? java generics intellij-idea syntax tilde — 迈克尔·K source
158 它只是“与声明中相同”的简写。 一些IDE(例如IntelliJ)也使用此功能。 磁盘上的文件没有此标记,这只是IDE GUI中的压缩。 — openCage source 1 这是一个Intellij屏幕截图。 — Michael K'2 只是出于个人说明的目的-IntelliJ生成带有这种表示法的Java源文件iaw,包含非法Java内容的源文件???还是这仅仅是源代码的视图,保存的文件是正确的? — 2011年 5 @Andreas_D:这只是一个视图。磁盘上的文件正常。 — openCage 2011年 6 实际上,代字号是灰色的(表示它是不同的),如果单击它,它将展开为完整的定义。 — yshavit 1 可以在“编辑/常规/代码折叠”的intelij设置中禁用此功能。 — Ocie Mitchell
16 我想说,如果没有波浪号,那么代码已经是Java7。Java7 允许菱形运算符,所以这是/将是合法的Java代码: Map<String, List<String>> map = new HashMap<>(); (但是-使用这种语法没有波浪号) — 安德烈亚斯·多克(Andreas Dolk) source
9 在IntelliJ IDEA中,~此处: Set<String> associations = new LinkedHashSet<~>(); 表示String,与左侧的声明中的相同。 — 紫南星 source