„Java“ skaitytuvo klasė yra java.util pakete. „Java“ suteikia įvairių būdų, kaip skaityti įvestį iš klaviatūros, viena iš jų yra java.util.Scanner klasė.
„Java Scanner“ klasė suskaido įvestį į žetonus, naudodama skyriklį, kuris pagal numatytuosius nustatymus yra tarpas. Jame pateikiama daug būdų skaityti ir analizuoti įvairias primityvias reikšmes.
Parsisiųsti youtube vaizdo įrašą su vlc
„Java Scanner“ klasė plačiai naudojama analizuojant tekstą eilutėms ir primityviems tipams naudojant reguliariąją išraišką. Tai paprasčiausias būdas gauti įvestį Java. Naudodami „Java“ skaitytuvą, iš vartotojo galime gauti primityvių tipų įvestį, pvz., int, long, double, byte, float, short ir kt.
„Java Scanner“ klasė išplečia objektų klasę ir įgyvendina „Iterator“ ir „Closeable“ sąsajas.
„Java Scanner“ klasėje pateikiami nextXXX() metodai, skirti grąžinti vertės tipą, pvz., nextInt(), nextByte(), nextShort(), next(), nextLine(), nextDouble(), nextFloat(), nextBoolean() ir kt. Norėdami gauti vieną simbolį iš skaitytuvo, galite iškviesti next().charAt(0) metodą, kuris grąžina vieną simbolį.
„Java“ skaitytuvo klasės deklaracija
public final class Scanner extends Object implements Iterator
Kaip gauti Java Scanner
Norėdami gauti „Java Scanner“ egzempliorių, kuris nuskaito vartotojo įvestį, turime perduoti įvesties srautą (System.in) skaitytuvo klasės konstruktoriuje. Pavyzdžiui:
Scanner in = new Scanner(System.in);
Norėdami gauti „Java Scanner“ egzempliorių, kuris analizuoja eilutes, turime perduoti eilutes „Scanner“ klasės konstruktoriuje. Pavyzdžiui:
Scanner in = new Scanner('Hello Javatpoint');
„Java“ skaitytuvo klasės konstruktoriai
SN | Konstruktorius | apibūdinimas |
---|---|---|
1) | Skaitytuvas (failo šaltinis) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto failo. |
2) | Skaitytuvas (failo šaltinis, eilutės simbolių rinkinio pavadinimas) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto failo. |
3) | Skaitytuvas (InputStream šaltinis) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto įvesties srauto. |
4) | Skaitytuvas (InputStream šaltinis, eilutės simbolių rinkinio pavadinimas) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto įvesties srauto. |
5) | Skaitytuvas (skaitomas šaltinis) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto šaltinio. |
6) | Skaitytuvas (eilutės šaltinis) | Jis sukuria naują skaitytuvą, kuris sukuria reikšmes, nuskaitytas iš nurodytos eilutės. |
7) | Skaitytuvas (ReadableByteChannel šaltinis) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto kanalo. |
8) | Skaitytuvas (ReadableByteChannel šaltinis, eilutės simbolių rinkinio pavadinimas) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto kanalo. |
9) | Skaitytuvas (kelio šaltinis) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto failo. |
10) | Skaitytuvas (kelio šaltinis, eilutės simbolių rinkinio pavadinimas) | Jis sukuria naują skaitytuvą, kuris sukuria vertes, nuskaitytas iš nurodyto failo. |
Java skaitytuvo klasės metodai
Toliau pateikiamas skaitytuvo metodų sąrašas:
SN | Modifikatorius ir tipas | Metodas | apibūdinimas |
---|---|---|---|
1) | tuštuma | Uždaryti() | Jis naudojamas šiam skaitytuvui uždaryti. |
2) | modelis | skyriklis () | Jis naudojamas norint gauti šabloną, kurį šiuo metu naudoja skaitytuvo klasė, kad atitiktų skiriamuosius ženklus. |
3) | Srautas | rasti viską () | Jis naudojamas norint rasti atitikties rezultatų srautą, atitinkantį pateiktą šablono eilutę. |
4) | Styga | FindInLine() | Jis naudojamas norint rasti kitą šablono, sudaryto iš nurodytos eilutės, atvejį, nepaisant skiriamųjų ženklų. |
5) | styga | FindWithinHorizon() | Jis naudojamas norint rasti kitą šablono, sudaryto iš nurodytos eilutės, atvejį, nepaisant skiriamųjų ženklų. |
6) | loginis | hasNext () | Grąžinama tiesa, jei šio skaitytuvo įvestyje yra kitas prieigos raktas. |
7) | loginis | hasNextBigDecimal() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip BigDecimal naudojant nextBigDecimal() metodą, ar ne. |
8) | loginis | hasNextBigInteger() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip BigDecimal naudojant nextBigDecimal() metodą, ar ne. |
9) | loginis | hasNextBoolean() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip Būlio reikšmė naudojant nextBoolean() metodą, ar ne. |
10) | loginis | hasNextByte() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip baitas naudojant nextBigDecimal() metodą, ar ne. |
vienuolika) | loginis | hasNextDouble() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip BigDecimal naudojant nextByte() metodą, ar ne. |
12) | loginis | hasNextFloat() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip slankusis naudojant nextFloat() metodą, ar ne. |
13) | loginis | hasNextInt() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip int naudojant nextInt() metodą, ar ne. |
14) | loginis | hasNextLine() | Jis naudojamas patikrinti, ar šio skaitytuvo įvestyje yra kita eilutė, ar ne. |
penkiolika) | loginis | hasNextLong() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip ilgas naudojant nextLong() metodą, ar ne. |
16) | loginis | hasNextShort() | Jis naudojamas patikrinti, ar kitas šio skaitytuvo įvesties prieigos raktas gali būti interpretuojamas kaip trumpasis naudojant nextShort() metodą, ar ne. |
17) | IO išimtis | ioException() | Jis naudojamas, kad IOException paskutinį kartą būtų nuskaitytas šio skaitytuvo. |
18) | Vietinis | vietinis () | Jis naudojamas norint gauti skaitytuvo klasės lokalę. |
19) | MatchResult | atitikimas () | Jis naudojamas norint gauti paskutinės šio skaitytuvo atliktos nuskaitymo operacijos atitikties rezultatą. |
dvidešimt) | Styga | Kitas() | Jis naudojamas norint gauti kitą pilną prieigos raktą iš naudojamo skaitytuvo. |
dvidešimt vienas) | BigDecimal | nextBigDecimal() | Jis nuskaito kitą įvesties prieigos raktą kaip BigDecimal. |
22) | BigInteger | nextBigInteger() | Jis nuskaito kitą įvesties prieigos raktą kaip BigInteger. |
23) | loginis | nextBoolean() | Jis nuskaito kitą įvesties prieigos raktą į loginę reikšmę ir grąžina tą reikšmę. |
24) | baitas | nextByte() | Jis nuskaito kitą įvesties prieigos raktą kaip baitą. |
25) | dvigubai | nextDouble() | Jis nuskaito kitą įvesties žetoną kaip dvigubą. |
26) | plūdė | nextFloat() | Jis nuskaito kitą įvesties žetoną kaip plūdurą. |
27) | tarpt | nextInt() | Jis nuskaito kitą įvesties prieigos raktą kaip Int. |
28) | Styga | kita eilutė () | Jis naudojamas norint gauti skaitytuvo objekto įvesties eilutę. |
29) | ilgai | nextLong () | Jis nuskaito kitą įvesties žetoną kaip ilgą. |
30) | trumpas | nextShort() | Jis nuskaito kitą įvesties prieigos raktą kaip trumpąjį. |
31) | tarpt | radix() | Jis naudojamas norint gauti numatytąjį skaitytuvo naudojimo radiksą. |
32) | tuštuma | pašalinti () | Jis naudojamas, kai pašalinimo operacijos nepalaiko šis „Iterator“ diegimas. |
33) | Skaitytuvas | iš naujo () | Jis naudojamas iš naujo nustatyti naudojamą skaitytuvą. |
3. 4) | Skaitytuvas | praleisti () | Jis praleidžia įvestį, atitinkančią nurodytą šabloną, nepaisydamas skiriamųjų ženklų |
35) | Srautas | žetonai () | Jis naudojamas norint gauti skiriamaisiais ženklais atskirtų žetonų srautą iš naudojamo skaitytuvo objekto. |
36) | Styga | toString() | Jis naudojamas norint gauti skaitytuvo eilutės atvaizdavimą. |
37) | Skaitytuvas | UseDelimiter() | Jis naudojamas norint nustatyti naudojamo skaitytuvo skiriamąjį šabloną pagal nurodytą šabloną. |
38) | Skaitytuvas | useLocale() | Jis naudojamas šio skaitytuvo lokalės objektui nustatyti į nurodytą lokalę. |
39) | Skaitytuvas | useRadix() | Jis naudojamas numatytajam naudojamo skaitytuvo radiksui nustatyti į nurodytą šaknį. |
1 pavyzdys
Pažiūrėkime paprastą „Java Scanner“ pavyzdį, kai gauname vieną vartotojo įvestį. Čia mes prašome eilutės per in.nextLine() metodą.
import java.util.*; public class ScannerExample { public static void main(String args[]){ Scanner in = new Scanner(System.in); System.out.print('Enter your name: '); String name = in.nextLine(); System.out.println('Name is: ' + name); in.close(); } }
Išvestis:
pakeičiant eilutę Java
Enter your name: sonoo jaiswal Name is: sonoo jaiswal
2 pavyzdys
import java.util.*; public class ScannerClassExample1 { public static void main(String args[]){ String s = 'Hello, This is JavaTpoint.'; //Create scanner Object and pass string in it Scanner scan = new Scanner(s); //Check if the scanner has a token System.out.println('Boolean Result: ' + scan.hasNext()); //Print the string System.out.println('String: ' +scan.nextLine()); scan.close(); System.out.println('--------Enter Your Details-------- '); Scanner in = new Scanner(System.in); System.out.print('Enter your name: '); String name = in.next(); System.out.println('Name: ' + name); System.out.print('Enter your age: '); int i = in.nextInt(); System.out.println('Age: ' + i); System.out.print('Enter your salary: '); double d = in.nextDouble(); System.out.println('Salary: ' + d); in.close(); } }
Išvestis:
Boolean Result: true String: Hello, This is JavaTpoint. -------Enter Your Details--------- Enter your name: Abhishek Name: Abhishek Enter your age: 23 Age: 23 Enter your salary: 25000 Salary: 25000.0
3 pavyzdys
import java.util.*; public class ScannerClassExample2 { public static void main(String args[]){ String str = 'Hello/This is JavaTpoint/My name is Abhishek.'; //Create scanner with the specified String Object Scanner scanner = new Scanner(str); System.out.println('Boolean Result: '+scanner.hasNextBoolean()); //Change the delimiter of this scanner scanner.useDelimiter('/'); //Printing the tokenized Strings System.out.println('---Tokenizes String---'); while(scanner.hasNext()){ System.out.println(scanner.next()); } //Display the new delimiter System.out.println('Delimiter used: ' +scanner.delimiter()); scanner.close(); } }
Išvestis:
Boolean Result: false ---Tokenizes String--- Hello This is JavaTpoint My name is Abhishek. Delimiter used: /