//source code
int[] s = new int[]{1,2,3,4};
for(int i:s){
System.out.println(i);
}
----------------------------
//below is in the class file
for(int i$ = 0; i$ < b; ++i$) {
int i = a[i$];
System.out.println(i);
}
$的用途是什么?我是一个像c一样的指针?
在这种情况下,它实际上是一个名为i$
的变量。 JLS-3.8. Identifiers读(部分)
“Java字母”包括大写和小写ASCII拉丁字母AZ(
\u0041
-\u005a
)和az(\u0061
-\u007a
),并且由于历史原因,ASCII下划线(_
或\u005f
)和美元符号($
或\u0024
) )。$
标志应仅用于机械生成的源代码,或者很少用于访问遗留系统上的预先存在的名称。