logo

Java PushbackReader-Klasse

Der PushbackReader-Klasse in Java ist Teil der java.io.package und wird zum Lesen von Zeichen aus einem Stream verwendet. Mit dieser Klasse können wir Zeichen zurück in den Stream schieben.

Funktionen der PushbackReader-Klasse:

  • Diese Klasse verwendet einen Puffer, der es uns ermöglicht, Zeichen zurück in den Stream zu schieben.
  • Dieser Kurs eignet sich hervorragend zum Lesen von Texten und zum Überprüfen von Zeichen, ohne sie sofort zu verwenden. Wenn der Charakter nicht benötigt wird, kann er zurückgeschoben werden.

Beispiel:



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();  }  } } 

Ausgabe
Read character: H Read character again: H Next character: e 


Deklaration der PushbackReader-Klasse

Die Deklaration der PushbackReader-Klasse ist unten aufgeführt:

JQuery-Elternteil

Die öffentliche Klasse PushbackReader erweitert FilterReader

Alle implementierten Schnittstellen:

  • Verschließbar: Über diese Schnittstelle werden Ressourcen freigegeben
  • AutoCloseable: Diese Schnittstelle ermöglicht das automatische Schließen in einer try-with-resources-Anweisung.
  • Lesbar: Über diese Schnittstelle werden Daten aus dem Objekt gelesen.

Konstruktoren in PushbackReader

Diese Klasse besteht aus zwei Konstruktoren, mit deren Hilfe wir Objekte dieser Klasse auf unterschiedliche Weise erstellen können. Die folgenden Konstruktoren sind in dieser Klasse verfügbar:

1. PushbackReader (Leser-Push): Dieser Konstruktor wird verwendet, um einen neuen PushbackReader mit einem Standard-Pushback-Puffer zu erstellen.

Syntax:

öffentlicher PushbackReader (Leser-Push)

Beispiel:

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();  }  } } 

Ausgabe
Hello World!


2. PushbackReader (Reader-Push-Int-Größe): Mit diesem Konstruktor können wir die Größe des Pushback-Puffers angeben

Syntax:

public PushbackReader(Reader push int size)

Beispiel:

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();  }  } } 

Ausgabe
Hello World!


So konvertieren Sie eine Ganzzahl in einen String Java

Java PushbackReader-Methoden

Das Bild unten zeigt die Methoden der CharArrayWriter-Klasse.

io.PushbackReader-Klasse in Java' title=


Jetzt werden wir jede Methode einzeln im Detail besprechen:

1. read(): Mit dieser Methode wird jeweils ein Zeichen aus dem Stream gelesen

Syntax:

public int read()

  • Parameter: Diese Methode benötigt keine Parameter.
  • Rückgabetyp: Diese Methode gibt das gelesene Zeichen als Ganzzahl zurück oder gibt -1 zurück, wenn das Ende des Streams erreicht ist.


2. read(char[] carray int offset int maxlen): Mit dieser Methode wird ein Block von Zeichen gelesen.

Arrayliste in Java sortieren

Syntax:

public int read(char[] carray int offset int maxlen)

  • Parameter: Diese Methode umfasst drei Parameter, die unten aufgeführt sind
    • char[] Träger: Es handelt sich um ein Zeichenarray, in dem sich die gelesenen Zeichen befinden gelagert.
    • int-Offset: Es ist die Startposition im Array
    • int maxlen: Dies ist die maximale Anzahl der zu lesenden Zeichen.
  • Rückgabetyp: Diese Methode gibt die Anzahl der gelesenen Zeichen zurück


3. close(): Mit dieser Methode wird der Reader geschlossen

Syntax:

public void close()

  • Parameter: Diese Methode benötigt keine Parameter
  • Rückgabetyp: Diese Methode gibt nichts zurück.


4. mark(int readAheadLimit): Mit dieser Methode wird die aktuelle Position im Stream markiert

Syntax:

öffentliches ungültiges Zeichen (int readAheadLimit)

  • Parameter: Diese Methode enthält einen Parameter readAheadLimit, der die maximale Anzahl von Zeichen angibt, die gelesen werden können, bevor die Markierungsposition ungültig wird.
  • Rückgabetyp: Diese Methode gibt nichts zurück


5. überspringen(langes n): Diese Methode wird verwendet, um eine bestimmte Anzahl von Zeichen zu überspringen.

Syntax:

öffentlicher langer Sprung (langes n)

  • Parameter: Diese Methode enthält einen Parameter long n, der die Anzahl der Zeichen angibt, die im Stream übersprungen werden sollen.
  • Rückgabetyp: Diese Methode gibt die Anzahl der übersprungenen Zeichen zurück


6. reset(): Diese Methode wird verwendet, um zu der Position zurückzukehren, an der mark() aufgerufen wurde.

Syntax:

public void reset()

Vererbung in C++
  • Parameter: Diese Methode benötigt keine Parameter
  • Rückgabetyp: Diese Methode gibt nichts zurück


7. markSupported(): Diese Methode gibt an, ob der Stream das Markieren unterstützt oder nicht

Syntax:

öffentliches boolesches markSupported()

  • Parameter: Diese Methode benötigt keine Parameter
  • Rückgabetyp: Diese Methode gibt false zurück, da die Markierung nicht unterstützt wird.


8. bereit(): Diese Methode prüft, ob der Stream zum Lesen bereit ist oder nicht.

Syntax:

öffentlicher boolescher Wert ready()

  • Parameter: Diese Methode benötigt keine Parameter
  • Rückgabetyp: Diese Methode gibt true zurück, wenn der Stream bereit ist.


9. ungelesen(int c): Diese Methode wird verwendet, um Zeichen zurück in den Stream zu schieben.

Syntax:

öffentliche Leere ungelesen(int c)

  • Parameter: Diese Methode benötigt einen einzelnen Parameter, nämlich c, bei dem es sich um das Zeichen handelt, das zurück in den Stream verschoben werden soll.
  • Rückgabetyp: Diese Methode gibt nichts zurück.


10. unread(char[] carray): Diese Methode wird verwendet, um ein Array von Zeichen zurück in den Stream zu verschieben.

Blasensortierung im Algorithmus

Syntax:

public void unread(char[] carray)

  • Parameter: Bei dieser Methode wird ein Array von Zeichen in den Stream zurückgeschoben.
  • Rückgabetyp: Diese Methode gibt nichts zurück.


Java-Programm zur Demonstration der PushbackReader-Methoden

Beispiel:

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();  } } 

Ausgabe
Is the stream ready? true Using read() and skip(): Geso Using read() with an array: r After unread() the next character: F 
Quiz erstellen