Java的语法糖中的$是什么?

Dus*_*ust 0 java jvm

//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);
}
Run Code Online (Sandbox Code Playgroud)

$的用途是什么?i $是像c的指针吗?

Ell*_*sch 5

在这种情况下,它实际上是一个名为的变量i$JLS-3.8。标识符读取(部分)

“ Java字母”包括大写和小写的ASCII拉丁字母AZ(\u0041- \u005a)和az(\u0061- \u007a),以及由于历史原因,ASCII下划线(_\u005f)和美元符号($\u0024)。该$符号仅可用于机械生成的源代码中,或者很少用于访问旧系统上的现有名称。