Postoje razni načini za učitavanje ulaza sa tastature, java.util.Scanner klasa je jedan od njih.
Java Scanner klasa dijeli ulaz u tokene koristeći ograničavač (delimiter) koji je po defaultu blank. Ona obezbjeđuje mnoge metode za čitanje i parsiranje različitih primitivnih vrijednosti.
Java Scanner klasa se mnogo koristi za parsiranje teksta za string i primitivne tipove pomoću regularnih izraza.
Java Scanner klasa nasljeđuje Object klasu i implementira Iterator i Closeable interfejse.
Često korišteni metodi Scanner klase
Ovo je lista često korištenih metoda klase Scanner:
Metod |
Opis |
public String next() |
vraća sljedeći token iz scanner-a. |
public String nextLine() |
pomjera poziciju scanner-a na sljedeći red i vraća vrijednost kao string. |
public byte nextByte() |
skenira sljedeći token kao byte. |
public short nextShort() |
skenira sljedeći token kao short vrijednost. |
public int nextInt() |
skenira sljedeći token kao int vrijednost. |
public long nextLong() |
skenira sljedeći token kao long vrijednost. |
public float nextFloat() |
skenira sljedeći token kao float vrijednost. |
public double nextDouble() |
skenira sljedeći token kao double vrijednost. |
Primjer Java Scanner-a za dobijanje ulaza sa konzole
Pogledajmo jednostavan primjer Java Scanner klase koja čita int, string i double vrijednost kao ulaz:
import java.util.Scanner;
class ScannerTest{
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
System.out.println("Enter your rollno");
int rollno=sc.nextInt();
System.out.println("Enter your name");
String name=sc.next();
System.out.println("Enter your fee");
double fee=sc.nextDouble();
System.out.println("Rollno:"+rollno+" name:"+name+" fee:"+fee);
sc.close();
}
}
Ispis na ekranu:
Enter your rollno
111
Enter your name
Petar
Enter your fee
450000
Rollno:111 name: Petar fee: 450000
Primjer Java Scanner-a sa delimiterom
Pogledajmo primjer Scanner klase sa delimiterom. \s predstavlja blank.
import java.util.*;
public class ScannerTest2{
public static void main(String args[]){
String input = "10 tea 20 coffee 30 tea biscuits";
Scanner s = new Scanner(input).useDelimiter("\\s");
System.out.println(s.nextInt());
System.out.println(s.next());
System.out.println(s.nextInt());
System.out.println(s.next());
s.close();
}
}
Ispis na ekranu:
10
tea
20
coffee
Objektno orijentisano programiranje u Javi Index
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |