jdk源代码中..charloop,  bufferloop,  是什么用处..如 :
    String readLine(boolean ignoreLF) throws IOException {
StringBuffer s = null;
int startChar;
boolean omitLF = ignoreLF || skipLF;        synchronized (lock) {
            ensureOpen(); bufferLoop:
    for (;;) { if (nextChar >= nChars)
    fill();
if (nextChar >= nChars) { /* EOF */
    if (s != null && s.length() > 0)
return s.toString();
    else
return null;
}
boolean eol = false;
char c = 0;
int i;                /* Skip a leftover '\n', if necessary */
if (omitLF && (cb[nextChar] == '\n')) 
                    nextChar++;
skipLF = false;
omitLF = false;     charLoop:
for (i = nextChar; i < nChars; i++) {
    c = cb[i];
    if ((c == '\n') || (c == '\r')) {
eol = true;
break charLoop;
    }
} startChar = nextChar;
nextChar = i; if (eol) {
    String str;
    if (s == null) {
str = new String(cb, startChar, i - startChar);
    } else {
s.append(cb, startChar, i - startChar);
str = s.toString();
    }
    nextChar++;
    if (c == '\r') {
skipLF = true;
    }
    return str;
}

if (s == null) 
    s = new StringBuffer(defaultExpectedLineLength);
s.append(cb, startChar, i - startChar);
    }
        }
    }