@Override public int read() throws IOException {
synchronized (lock) {
    checkNotClosed();
    int ch=readChar();
    if (lastWasCR && ch == '\n') {
      ch=readChar();
    }
    lastWasCR=false;
    return ch;
  }
}

@ Override public int read ( ) throws IOException { synchronized ( lock ) { checkNotClosed ( ) ; int ch = readChar ( ) ; if ( lastWasCR && ch == '\n' ) { ch = readChar ( ) ; } lastWasCR = false ; return ch ; } }
reads a single character from this reader and returns it with the two higher - order bytes set to 0 . if possible , bufferedreader returns a character from the buffer . if there are no characters available in the buffer , it fills the buffer and then returns a character . it returns - 1 if there are no more characters in the source reader .
