1. Maca saka console nggunakakeSystem.in
Ing pelajaran sadurunge, kita kenal karo perintah kanggo nampilake informasi ing layar. Kanggo nindakake iki, kita wis nggunakake System.out
obyek print()
lan println()
cara. Iku prasaja lan trep.
Nanging, kaya sing wis sampeyan duga, nampilake informasi ing layar ora cukup kanggo kita. Tujuan umume program yaiku nindakake perkara sing migunani kanggo pangguna. Tegese kerep banget pangguna kudu bisa ngetik data saka keyboard.
Kaya sing ana ing output, kita uga duwe obyek khusus kanggo input data - System.in
. Nanging, sayangé kanggo kita, ora trep kaya sing dikarepake. Ngidini kita maca data saka keyboard siji karakter sekaligus.
Kanggo nambah iki, kita bakal nggunakake kelas liyane sing, nalika dipasangake karo obyek System.in
, bakal menehi kita kabeh sing perlu. Wiwit jaman biyen, Jawa wis ana kelas-kelas sing cocog karo saben acara. Lan saiki kita bakal ngerti salah sijine.
2. Scanner
kelas
Kelas Scanner
(jeneng lengkap: java.util.Scanner
) bisa maca data saka macem-macem sumber, contone konsol, file, lan Internet. Yen kita pengin maca data saka keyboard, mula kita kudu ngliwati obyek kasebut System.in
minangka argumen sing bakal dadi sumber data. Banjur obyek Scanner bakal nemtokake apa sing kudu ditindakake.
Maca saka keyboard nggunakake Scanner
obyek bakal katon kaya iki:
Kode | Panjelasan |
---|---|
|
Kita nggawe Scanner obyek. Kita maca baris teks saka keyboard. Kita maca nomer saka keyboard. |
Iku katon gampang, nanging apa iku pancene prasaja?
Aku mikir sampeyan kudu duwe akeh pitakonan, lan saiki kita bakal mangsuli.
Nanging pisanan, ayo nuduhake conto program lengkap sing nggunakake Scanner
kelas:
import java.util.Scanner;
public class Solution {
public static void main(String[] args)
{
Scanner console = new Scanner(System.in);
String name = console.nextLine();
int age = console.nextInt();
System.out.println("Name: " + name);
System.out.println("Age: " + age);
}
}
3. Nggawe Scanner
obyek
Pitakonan pisanan yaiku apa baris iki Scanner console = new Scanner (System.in);
?
Baris iki bisa uga mbingungake, nanging sampeyan bakal weruh kabeh sing padha. Dadi, kita mikir penting kanggo nerangake apa sing kedadeyan ing kene.
Elinga carane biasane nggawe variabel kanthi teks:
String str = "text";
Kaping pisanan, kita nulis jinis variabel ( String
), banjur jenenge ( str
), lan pungkasane, sawise tandha padha, kita nulis nilai kasebut.
Garis mbingungake kita sejatine padha:
Scanner console = new Scanner(System.in);
Kabeh ing sisih kiwa tandha padha yaiku deklarasi variabel sing dijenengi console
jinis Scanner
. Sampeyan bisa uga nelpon s
utawa scanner
malah keyboard
. Banjur kode bakal katon kaya iki:
Scanner s = new Scanner(System.in);
String name = s.nextLine();
int age = s.nextInt();
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
int age = scanner.nextInt();
Scanner keyboard = new Scanner(System.in);
String name = keyboard.nextLine();
int age = keyboard.nextInt();
Aku sing nggawe kabeh luwih cetha.
Nanging kode ing sisih tengen tandha padha rada rumit. Aku saiki referring kanggo new Scanner(System.in);
Sing ngandika, ana apa-apa gaib kedaden kene uga.
Ing kode iki, kita marang mesin Jawa: nggawe obyek anyar (tembung new
kunci) kang jinis Scanner
, maringaken ing System.in
obyek minangka sumber data kanggo Scanner
obyek mentas digawe.
Sawise nglakokake kabeh baris iki, kita bakal duwe Scanner
variabel sing dijenengi console
program sing bakal digunakake kanggo maca data saka keyboard.
4. Dhaftar cara
Ing conto ing ndhuwur, Scanner
console
variabel kita nyimpen referensi menyang Scanner
obyek.
Kanggo nelpon metode ing obyek sing dirujuk dening variabel, sampeyan kudu nulis titik sawise jeneng variabel, banjur jeneng metode lan argumen apa wae. Tampilan umum perintah kasebut yaiku:
variable.method(arguments);
Tuladha:
System.out.println("Hello");
System.out.println(1);
Yen sampeyan ora arep ngirim argumen menyang fungsi, sampeyan mung nulis kurung kosong:
variable.method();
Tuladha:
System.out.println();
5. input console
Nalika kita duwe Scanner
obyek, iku gampang kanggo njupuk data saka keyboard.
Kanggo maca baris saka keyboard , sampeyan butuh printah iki:
String str = console.nextLine();
Nalika eksekusi program tekan baris iki, bakal ngaso lan ngenteni pangguna ngetik data banjur pencet enter. Banjur kabeh sing dilebokake pangguna disimpen ing variabel str
.
Kanggo maca nomer saka keyboard , sampeyan butuh printah iki:
int number = console.nextInt();
Kabeh ing kene kaya prentah sadurunge. Nalika eksekusi program tekan baris iki, bakal ngaso lan ngenteni pangguna ngetik data banjur pencet enter. Sawise iku, kabeh sing dilebokake pangguna diowahi dadi nomer lan disimpen ing number
variabel kasebut.
Yen pangguna ngetik data sing ora bisa diowahi dadi integer, program bakal ngasilake kesalahan lan metu.
Kanggo maca angka pecahan saka keyboard , sampeyan butuh printah iki:
double number = console.nextDouble();
Pernyataan iki meh padha karo metode kasebut nextInt()
, mung mriksa manawa data sing dilebokake bisa diowahi dadi double
nomer.
Conto program sing maca rong angka saka keyboard lan nampilake jumlahe ing layar:
import java.util.Scanner;
public class Solution {
public static void main(String[] args)
{
Scanner console = new Scanner(System.in);
int a = console.nextInt();
int b = console.nextInt();
System.out.println(a + b);
}
}
Pangguna bisa ngetik sawetara nomer ing baris siji, misahake karo spasi: cara saka kelas Scanner
ngerti carane nangani iki. Sing jarene, program maca angka mung sawise pangguna mencet Enter
.
6. Cara liya saka Scanner
kelas
Miturut cara, cara ing ndhuwur ora kabeh sing Scanner
ditawakake kelas. Daftar lengkap metode katon kaya iki:
Metode | Katrangan |
---|---|
|
Maca data lan ngowahi dadi abyte |
|
Maca data lan ngowahi dadi ashort |
|
Maca data lan ngowahi dadiint |
|
Maca data lan ngowahi dadi along |
|
Maca data lan ngowahi dadi afloat |
|
Maca data lan ngowahi dadi adouble |
|
Maca data lan ngowahi dadi aboolean |
|
Maca siji "token". Token dipisahake kanthi spasi utawa pencet tombol enter |
|
Maca kabeh baris |
Ana uga cara sing ngidini sampeyan mriksa token sabanjure ing input tanpa njupuk (supaya ngerti cara sing digunakake kanggo maca).
Metode | Katrangan |
---|---|
|
Apa ana byte ? Apa input bisa diowahi dadi a byte ? |
|
Apa ana short ? Apa input bisa diowahi dadi a short ? |
|
Apa ana int ? Apa input bisa diowahi dadi int ? |
|
Apa ana long ? Apa input bisa diowahi dadi a long ? |
|
Apa ana float ? Apa input bisa diowahi dadi a float ? |
|
Apa ana double ? Apa input bisa diowahi dadi a double ? |
|
Apa ana boolean ? Apa input bisa diowahi dadi a boolean ? |
|
Apa ana token liyane? |
|
Apa ana baris liyane? |
7. Maca data saka senar
Kita sadurunge kasebut yen Scanner
kelas bisa maca data saka macem-macem sumber. Salah sawijining sumber kasebut yaiku senar teks .
Iku katon kaya iki:
String str = "text";
Scanner scanner = new Scanner(str);
Nalika nggawe Scanner
obyek, kita pass ing senar str
tinimbang System.in
obyek. Lan saiki scanner
obyek bakal maca data saka senar. Tuladha:
Kode program: | Katerangan: |
---|---|
|
//a == 10;
// b == 20;
Output layar bakal dadi: |