Јава ПусхбацкРеадер класа

Јава ПусхбацкРеадер класа

Тхе ПусхбацкРеадер класа у Јави је део јава.ио.пацкаге и користи се за читање знакова из тока. Ова класа нам омогућава да гурнемо знакове назад у ток.

Карактеристике ПусхбацкРеадер класе:

  • Ова класа користи бафер који нам омогућава да гурнемо знакове назад у ток.
  • Ова класа је одлична за читање текста и проверу знакова без употребе одмах. Ако лик није потребан, може се повући.

Пример:

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

Излаз
Read character: H Read character again: H Next character: e  


Декларација класе ПусхбацкРеадер

Декларација класе ПусхбацкРеадер је наведена у наставку:

јавна класа ПусхбацкРеадер проширује ФилтерРеадер

Сви имплементирани интерфејси:

  • Затварање: Овај интерфејс се користи за ослобађање ресурса
  • АутоЦлосеабле: Овај интерфејс омогућава аутоматско затварање у изјави покушаја са ресурсима.
  • Читљиво: Овај интерфејс се користи за читање података са објекта.

Конструктори у ПусхбацкРеадер-у

Ова класа се састоји од два конструктора уз помоћ којих можемо креирати објекат ове класе на различите начине. Следећи су конструктори доступни у овој класи:

1. ПусхбацкРеадер (притиснути читач): Овај конструктор се користи за креирање новог ПусхбацкРеадер-а са подразумеваним бафером за враћање.

Синтакса:

јавни ПусхбацкРеадер(Реадер пусх)

Пример:

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

Излаз
Hello World! 


2. ПусхбацкРеадер (читач пусх инт величина): Овај конструктор нам омогућава да одредимо величину бафера за враћање

Синтакса:

публиц ПусхбацкРеадер (читач пусх инт величина)

Пример:

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

Излаз
Hello World! 


Јава ПусхбацкРеадер методе

Слика испод показује методе класе ЦхарАрраиВритер.

ио.ПусхбацкРеадер Цласс у Јави


Сада ћемо детаљно разговарати о свакој методи један по један:

1. реад(): Овај метод се користи за читање једног по једног знака из тока

Синтакса:

публиц инт реад()

  • Параметар: Овај метод не узима ниједан параметар.
  • Тип повратка: Овај метод враћа знак прочитан као цео број или враћа -1 када се достигне крај тока.


2. реад(цхар[] царраи инт оффсет инт маклен): Овај метод се користи за читање комада знакова.

Синтакса:

публиц инт реад(цхар[] царраи инт оффсет инт маклен)

  • Параметар: Овај метод укључује три параметра која су наведена у наставку
    • цхар[] царраи: То је низ знакова где ће бити прочитани знакови ускладиштено.
    • инт оффсет: То је почетна позиција у низу
    • инт маклен: То је максималан број знакова за читање.
  • Тип повратка: Овај метод враћа број прочитаних знакова


3. затвори(): Овај метод се користи за затварање читача

Синтакса:

публиц воид цлосе()

  • Параметар: Овај метод не узима ниједан параметар
  • Тип повратка: Овај метод не враћа ништа.


4. марк(инт реадАхеадЛимит): Овај метод се користи за означавање тренутне позиције у стриму

Синтакса:

јавна ознака неважеће (инт реадАхеадЛимит)

  • Параметар: Овај метод укључује један параметар реадАхеадЛимит који одређује максималан број знакова који се могу прочитати пре него што позиција ознаке постане неважећа.
  • Тип повратка: Овај метод не враћа ништа


5. прескочи (дуго н): Овај метод се користи за прескакање одређеног броја знакова.

Синтакса:

јавно дуго прескочи (дуго н)

  • Параметар: Овај метод укључује један параметар дугачак н који представља број знакова које треба прескочити у току.
  • Тип повратка: Овај метод враћа број знакова који је прескочен


6. ресет(): Овај метод се користи за повратак на позицију на којој је позван марк().

Синтакса:

јавно ресетовање празнине ()

  • Параметар: Овај метод не узима ниједан параметар
  • Тип повратка: Овај метод не враћа ништа


7. маркСуппортед(): Овај метод говори да ли ток подржава означавање или не

Синтакса:

јавна логичка ознакаПодржана()

  • Параметар: Овај метод не узима ниједан параметар
  • Тип повратка: Овај метод враћа нетачно јер означавање није подржано.


8. спреман(): Овај метод проверава да ли је стрим спреман за читање или не.

Синтакса:

јавни боолеан реади()

  • Параметар: Овај метод не узима ниједан параметар
  • Тип повратка: Овај метод враћа труе ако је стрим спреман.


9. непрочитано (инт ц): Овај метод се користи за враћање карактера у ток.

Синтакса:

јавна празнина непрочитано (инт ц)

  • Параметар: Овај метод узима један параметар ц, који је карактер који се враћа назад у ток.
  • Тип повратка: Овај метод не враћа ништа.


10. унреад(цхар[] царраи): Овај метод се користи за гурање низа знакова назад у ток.

Синтакса:

јавна празнина непрочитана (цхар[] царраи)

  • Параметар: Овај метод узима низ знакова који се враћају у ток.
  • Тип повратка: Овај метод не враћа ништа.


Јава програм за демонстрацију ПусхбацкРеадер метода

Пример:

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

Излаз
Is the stream ready? true Using read() and skip(): Geso Using read() with an array: r After unread() the next character: F  
Креирај квиз