Razred Java PushbackReader
The Razred PushbackReader v Javi je del java.io.package in se uporablja za branje znakov iz toka. Ta razred nam omogoča potiskanje znakov nazaj v tok.
Lastnosti razreda PushbackReader:
- Ta razred uporablja medpomnilnik, ki nam omogoča potiskanje znakov nazaj v tok.
- Ta razred je odličen za branje besedila in preverjanje znakov, ne da bi jih uporabili takoj. Če znak ni potreben, ga je mogoče potisniti nazaj.
primer:
Java // Demonstrating the working // of PushbackReader import java.io.* ; public class Geeks { public static void main ( String [] args ) { String s = 'Hello World!' ; StringReader sr = new StringReader ( s ); // Create a PushbackReader with the StringReader PushbackReader pr = new PushbackReader ( sr ); try { // Read the first character int char1 = pr . read (); System . out . println ( 'Read character: ' + ( char ) char1 ); // Push this character back into the stream pr . unread ( char1 ); // Read the same character again (since we pushed it back) int char2 = pr . read (); System . out . println ( 'Read character again: ' + ( char ) char2 ); // Continue reading the next character int char3 = pr . read (); System . out . println ( 'Next character: ' + ( char ) char3 ); // Close the reader pr . close (); } catch ( IOException e ) { e . printStackTrace (); } } }
Izhod
Read character: H Read character again: H Next character: e
Deklaracija razreda PushbackReader
Deklaracija razreda PushbackReader je navedena spodaj:
javni razred PushbackReader razširja FilterReader
Vsi implementirani vmesniki:
- Zapiranje: Ta vmesnik se uporablja za sprostitev virov
- Samodejno zapiranje: Ta vmesnik omogoča samodejno zapiranje v stavku poskusi z viri.
- Berljivo: Ta vmesnik se uporablja za branje podatkov iz predmeta.
Konstruktorji v PushbackReader
Ta razred je sestavljen iz dveh konstruktorjev, s pomočjo katerih lahko ustvarimo objekt tega razreda na različne načine. V tem razredu so na voljo naslednji konstruktorji:
1. PushbackReader (Pritisni bralnik): Ta konstruktor se uporablja za ustvarjanje novega PushbackReaderja s privzetim povratnim medpomnilnikom.
Sintaksa:
javni PushbackReader (pritisk bralnika)
primer:
Java // Demonstrating the working // of PushbackReader(Reader push) import java.io.* ; public class Geeks { public static void main ( String [] args ) { // String to be read String s = 'Hello World!' ; // Create a StringReader to read from the string StringReader sr = new StringReader ( s ); // Create a PushbackReader with the StringReader PushbackReader pr = new PushbackReader ( sr ); try { // Read and print characters int charRead ; while (( charRead = pr . read ()) != - 1 ) { System . out . print (( char ) charRead ); } // Close the PushbackReader pr . close (); } catch ( IOException e ) { e . printStackTrace (); } } }
Izhod
Hello World!
2. PushbackReader (Reader push int size): Ta konstruktor nam omogoča, da določimo velikost povratnega medpomnilnika
Sintaksa:
javni PushbackReader (velikost vnesenega bralnika)
primer:
Java // Demonstrating the working // of PushbackReader(Reader push int size) import java.io.* ; public class Geeks { public static void main ( String [] args ) { // String to be read String s = 'Hello World!' ; // Create a StringReader to read from the string StringReader sr = new StringReader ( s ); // Create a PushbackReader with the StringReader // and a specified buffer size of 20 PushbackReader pr = new PushbackReader ( sr 20 ); try { // Read and print characters int charRead ; while (( charRead = pr . read ()) != - 1 ) { System . out . print (( char ) charRead ); } // Close the PushbackReader pr . close (); } catch ( IOException e ) { e . printStackTrace (); } } }
Izhod
Hello World!
Metode Java PushbackReader
Spodnja slika prikazuje metode razreda CharArrayWriter.
Zdaj bomo podrobno razpravljali o vsaki metodi posebej:
1. preberi(): Ta metoda se uporablja za branje enega znaka naenkrat iz toka
Sintaksa:
public int read()
- Parameter: Ta metoda ne zajema nobenega parametra.
- Vrsta vračila: Ta metoda vrne prebrani znak kot celo število ali vrne -1, ko je dosežen konec toka.
2. read(char[] carray int offset int maxlen): Ta metoda se uporablja za branje niza znakov.
Sintaksa:
public int read(char[] carray int offset int maxlen)
- Parameter: Ta metoda vključuje tri parametre, ki so navedeni spodaj
- char[] carray: To je niz znakov, kjer bodo prebrani znaki shranjeno.
- int odmik: Je začetni položaj v nizu
- int maxlen: To je največje število znakov za branje.
- Vrsta vračila: Ta metoda vrne število prebranih znakov
3. zapri(): Ta metoda se uporablja za zapiranje bralnika
Sintaksa:
public void close()
- Parameter: Ta metoda ne zajema nobenega parametra
- Vrsta vračila: Ta metoda ne vrne ničesar.
4. označi (int readAheadLimit): Ta metoda se uporablja za označevanje trenutnega položaja v toku
Sintaksa:
javna prazna oznaka (int readAheadLimit)
- Parameter: Ta metoda vključuje en parameter readAheadLimit, ki določa največje število znakov, ki jih je mogoče prebrati, preden položaj oznake postane neveljaven.
- Vrsta vračila: Ta metoda ne vrne ničesar
5. preskoči (dolg n): Ta metoda se uporablja za preskok določenega števila znakov.
Sintaksa:
javni dolgi preskok (dolgi n)
- Parameter: Ta metoda vključuje en parameter, dolg n, ki je število znakov, ki jih je treba preskočiti v toku.
- Vrsta vračila: Ta metoda vrne število preskočenih znakov
6. ponastavi(): Ta metoda se uporablja za vrnitev na položaj, kjer je bil poklican mark().
Sintaksa:
javna praznina ponastavi()
- Parameter: Ta metoda ne zajema nobenega parametra
- Vrsta vračila: Ta metoda ne vrne ničesar
7. markSupported(): Ta metoda pove, ali tok podpira označevanje ali ne
Sintaksa:
javna logična vrednost markSupported()
- Parameter: Ta metoda ne zajema nobenega parametra
- Vrsta vračila: Ta metoda vrne false, ker označevanje ni podprto.
8. pripravljen(): Ta metoda preveri, ali je tok pripravljen za branje ali ne.
Sintaksa:
javna logična vrednost pripravljena()
- Parameter: Ta metoda ne zajema nobenega parametra
- Vrsta vračila: Ta metoda vrne true, če je tok pripravljen.
9. neprebrano (int c): Ta metoda se uporablja za potiskanje znaka nazaj v tok.
Sintaksa:
javna praznina neprebrano (int c)
- Parameter: Ta metoda sprejme en sam parameter, ki je c, ki je znak, ki ga je treba potisniti nazaj v tok.
- Vrsta vračila: Ta metoda ne vrne ničesar.
10. neprebrano (char[] carray): Ta metoda se uporablja za potiskanje niza znakov nazaj v tok.
Sintaksa:
public void neprebrano (char[] carray)
- Parameter: Ta metoda vzame niz znakov, ki jih je treba potisniti nazaj v tok.
- Vrsta vračila: Ta metoda ne vrne ničesar.
Program Java za predstavitev metod PushbackReader
primer:
Java // Demonstrating the working // of methods of PushbackReader class import java.io.* ; public class Geeks { public static void main ( String [] args ) throws IOException { String s = 'GeeksForGeeks' ; StringReader sr = new StringReader ( s ); PushbackReader pr = new PushbackReader ( sr ); // Check if the stream is ready System . out . println ( 'Is the stream ready? ' + pr . ready ()); // Use read() and skip() System . out . print ( 'Using read() and skip(): ' ); for ( int i = 0 ; i < 3 ; i ++ ) { char c = ( char ) pr . read (); // Read 1 char System . out . print ( c ); pr . skip ( 1 ); // Skip next char } char c = ( char ) pr . read (); // read next char after 3 skip cycles System . out . print ( c ); // Now read() with array – only 1 char expected char [] arr = new char [ 1 ] ; pr . read ( arr ); System . out . println ( 'nUsing read() with an array: ' + new String ( arr )); // Unread and read back pr . unread ( 'F' ); char nextChar = ( char ) pr . read (); System . out . println ( 'After unread() the next character: ' + nextChar ); // Close the reader pr . close (); } }
Izhod
Is the stream ready? true Using read() and skip(): Geso Using read() with an array: r After unread() the next character: FUstvari kviz