V Jave zvyčajne používame println() spôsob tlače výpisu. Patrí k PrintStream trieda. Trieda poskytuje aj ostatné metódy na rovnaký účel. V tejto časti sa naučíme ako vytlačiť Java . Spolu s tým vysvetlíme aj vyhlásenie System.out.println() .
Spôsob, ktorý by sme mali použiť, závisí od toho, čo chceme tlačiť a aký typ výstupu chceme. Existujú tri spôsoby tlače výpisov:
pole reťazcov
- print() metóda
- metóda println().
- metóda printf().
print() metóda
Metóda print() sa používa na tlač textu na konzole. Ide o preťaženú metódu PrintStream trieda. Akceptuje reťazec ako parameter. Po vytlačení výpisu zostane kurzor na rovnakom riadku. Funguje to aj vtedy, ak neanalyzujeme žiadny parameter.
Syntax:
public void print(String s)
Vo vyššie uvedenej metóde, ak je argument nulový , vypíše reťazec null. Keď odošleme reťazec ako parameter, znaky reťazca sa skonvertujú na bajty podľa predvoleného kódovania znakov platformy, potom sa tieto bajty zapíšu rovnakým spôsobom ako v písať (int) metóda. Metóda write() zapíše zadaný bajt do výstupného toku.
Ďalšie preťažené metódy metódy print() sú:
Preťažená metóda | Výtlačky |
---|---|
tlačiť (boolovská hodnota b) | Booleovská hodnota |
tlačiť (znak c) | Postava |
vytlačiť(znak[] s) | Pole znakov |
vytlačiť (dvojité d) | Číslo s pohyblivou rádovou čiarkou s dvojitou presnosťou |
vytlačiť (float f) | Číslo s pohyblivou rádovou čiarkou |
tlač (dlhé l) | Dlhé celé číslo |
vytlačiť (int i) | Celé číslo |
vytlačiť (objekt) | Objekt |
tlačiť (reťazec s) | |
Reťazec |
metóda println().
Ide o inovovanú verziu metódy print(). Používa sa aj na zobrazenie textu na konzole. Ide o preťaženú metódu PrintStream trieda. Akceptuje reťazec ako parameter. Po vytlačení výpisu hodí kurzor na začiatok ďalšieho riadku. Je to hlavný rozdiel medzi metódou println() a metódou print().
Syntax:
public void println(String s)
Vyššie uvedená metóda najskôr vyvolá vytlačiť (reťazec) metóda a potom metóda println().
Ďalšou preťaženou metódou metódy println() sú:
Preťažená metóda | Výtlačky |
---|---|
tlačiť (boolovská hodnota b) | Booleovská hodnota |
tlačiť (znak c) | Postava |
vytlačiť(znak[] s) | Pole znakov |
vytlačiť (dvojité d) | Číslo s pohyblivou rádovou čiarkou s dvojitou presnosťou |
vytlačiť (float f) | Číslo s pohyblivou rádovou čiarkou |
tlač (dlhé l) | Dlhé celé číslo |
vytlačiť (int i) | Celé číslo |
vytlačiť (objekt) | Objekt |
tlačiť (reťazec s) | |
Reťazec |
metóda printf().
Metóda printf() sa používa, ak chceme naformátovaný reťazec vytlačiť do konzoly pomocou zadaného formátovacieho reťazca a argumentov. Je to tiež preťažená metóda triedy PrintStream. Metóda sa správa rovnako ako vyvolanie metódy format().
out.format(format, args)
Syntax:
public PrintStream printf(String format, Object... args)
Vracia výstupný tok. Akceptuje dva parametre:
aké sú rozmery obrazovky môjho počítača
formát: Je to formátovaný reťazec. Ak sa chcete dozvedieť viac o formátovanom reťazci, prejdite na odkaz https://bit.ly/2EaKzmq.
argumenty: Je to argument, na ktorý odkazujú špecifikátory formátu. Ak je počet argumentov väčší ako špecifikátory formátu, ostatné argumenty sa ignorujú. Počet argumentov môže byť nula.
To hádže NullPointerExcepption ak je formát null a tiež vyhodí IllegalFormatException ak formátovací reťazec obsahuje neplatnú syntax.
Ďalšia preťažená metóda metódy printf() je:
- printf(Locale l, String format, Object... args): Používa sa na zápis naformátovaného reťazca do tohto výstupného toku pomocou zadaného formátovacieho reťazca a argumentov.
Problém s vyššie uvedenými tromi metódami je, že nemôžeme priamo použiť metódy. Dôvodom je, že nemôžeme priamo vytvoriť objekt triedy PrintStream. To znamená:
PrintStream ps=new PrintStream(); ps.println();
Je to neplatný spôsob volania metódy. Java poskytuje alternatívny spôsob vytvorenia inštancie triedy PrintStream, ktorá je System.out . Predstavuje Štandardný výstupný tok . Znamená to, že ak chceme na konzole vytlačiť akýkoľvek príkaz, mali by sme použiť nasledujúci príkaz:
System.out.print(parameter);
Alebo
jvm
System.out.println(parameter);
Kde parameter je čokoľvek, čo chceme vytlačiť na konzole.
Poďme pochopiť význam vyššie uvedených tlačových vyhlásení. Vo vyššie uvedených dvoch vyhláseniach pozorujeme, že vyhlásenie je rozdelené do troch častí:
Použime tri vyššie uvedené metódy v príklade.
PrintDemo.java
import java.io.*; public class PrintDemo { public static void main(String[] args) { //declaration of different datatypes int num = 122; char ch = 'A'; String str = 'Oracle'; double d = 190.98; float f = 3.14f; //prints the values on the console System.out.println(); //prints nothing but throws the cursor to the next line System.out.println(num); //prints integer System.out.println(ch); //prints character System.out.print(str+' '); System.out.print(d +' '); System.out.print(f+' '); System.out.printf(''%s' %n', 'javatpoint'); System.out.printf(''%S' %n', 'Jack'); } }
Výkon:
122 A Oracle 190.98 3.14 'javatpoint' 'JACK'
Na tlač výpisu zvyčajne používame metódu print() alebo println(). Výkon týchto metód je pomalý, pretože ide o synchronizované metódy. Viacnásobné vlákna preto môžu viesť k nízkemu výkonu. V porovnaní s inými vstupno-výstupnými operáciami spôsobuje stroju veľkú réžiu. Argument, ktorý sme analyzovali, prešiel do konzoly servera. Na vykonanie úlohy je potrebný čas jadra a čas jadra sa vzťahuje na čas CPU.
Môžeme použiť aj metódy triedy BufferedWriter resp Trieda PrintWriter na vykonanie výstupu. Výkon týchto metód triedy je rýchly v porovnaní s metódou triedy PrintStream.