Isi kandungan:
- Mengimport kelas pengimbas di Java
- Mengisytiharkan dan membuat objek Pengimbas di Java
- Mendapatkan input
Video: Cara agar NISN Siswa Baru Cepat Masuk Dapodik 2020 2024
Sehingga Java 1. 5, mendapat input teks dari pengguna dalam program Java berasaskan konsol tidak mudah. Tetapi dengan Java 1. 5, kelas baru yang dipanggil
Pengimbas
- diperkenalkan untuk memudahkan tugas mendapatkan input dari pengguna. Di sini, anda menggunakan kelas
Pengimbas
untuk mendapatkan nilai input yang mudah dari pengguna. Teknik-teknik yang saya kemukakan di sini digunakan dalam banyak program yang ditunjukkan di seluruh buku ini.
Jika anda menggunakan versi Java yang lebih lama, anda masih harus membaca ini, kerana banyak program menggunakan kelas
Pengimbas
.
Program mudah di bawah menggunakan kelas
Pengimbas
untuk membaca nilai integer dari pengguna dan kemudian memaparkan nilai kembali ke konsol untuk mengesahkan bahawa program menerima nilai yang dimasukkan oleh pengguna. Berikut adalah contoh tetingkap konsol untuk program ini:
Masukkan integer: 5
Anda masukkan 5.
Program bermula dengan memaparkan mesej
Masukkan integer:
pada baris pertama. Kemudian ia menunggu anda memasukkan nombor. Apabila anda menaip nombor (seperti 5) dan tekan kekunci Enter, ia akan memaparkan mesej pengesahan (
Anda masukkan 5
.) Pada baris kedua.
java import. util. Pengimbas; @@ ra1
kelas awam ScannerApp
{
Scanner statik sc = Scanner baru (System in); @@ ra6
static void utama utama (String [] args)
{
System. keluar. cetak ("Masukkan integer:"); @@ ra10
int x = sc. nextInt (); @@ ra11
Sistem. keluar. println ("Anda memasukkan" + x + "."); @@ ra12
}
}
Mengimport kelas pengimbas di Java
Sebelum anda boleh menggunakan kelas
Pengimbas
dalam program, anda mesti mengimportnya. Untuk melakukan itu, anda kodkan pernyataan
import
pada permulaan program, sebelum pengisytiharan kelas:
java import. util. Pengimbas;
Perhatikan bahawa
java
dan
util
tidak dikapitalisasi, tetapi
Pengimbas
adalah.
Jika anda menggunakan kelas lain di
java. gunakan pakej
, anda boleh mengimport keseluruhan pakej dengan mengodkan penyataan
import
seperti ini:
java import. util. *;
Mengisytiharkan dan membuat objek Pengimbas di Java
Sebelum anda boleh menggunakan kelas
Pengimbas
untuk membaca input dari konsol, anda mesti mengisytiharkan pemboleh
Pengimbas
daripada kelas
Pengimbas
. Anda mungkin ingin mencipta pembolehubah
Pengimbas
sebagai pemboleh ubah kelas dan mencipta objek
Pengimbas
dalam pembolehubah pembolehubah kelas, seperti ditunjukkan dalam baris 6 program di atas:
Pengimbas statik sc = Pengimbas baru (System in);
Dengan cara itu, anda boleh menggunakan pembolehubah
sc
dalam sebarang kaedah dalam kelas.
Untuk membuat objek
Pengimbas
, anda menggunakan kata kunci
baru
diikuti dengan panggilan ke pembina kelas
Pengimbas
. Ambil perhatian bahawa kelas
Pengimbas
memerlukan parameter yang menunjukkan strim input bahawa input berasal. Anda boleh menggunakan
Sistem. di
di sini untuk menentukan input konsol papan kekunci piawai.
Mendapatkan input
Untuk membaca nilai input dari pengguna, anda boleh menggunakan salah satu kaedah kelas
Pengimbas
yang disenaraikan di bawah. Seperti yang anda lihat, jenis data primitif mempunyai kaedah yang berasingan.
Kaedah | Penjelasan |
boolean nextBoolean ()
|
Membaca nilai
boolean
dari pengguna. |
byte nextByte ()
|
Membaca nilai
byte
dari pengguna. |
double nextDouble ()
|
Membaca
ganda
nilai dari pengguna. |
float nextFloat ()
|
Membaca
float
nilai dari pengguna. |
int nextInt ()
|
Membaca nilai
int
dari pengguna. |
String nextLine ()
|
Membaca
String
nilai dari pengguna. |
long nextLong ()
|
Membaca
panjang
nilai dari pengguna. |
nextShort pendek ()
|
Membaca
pendek
nilai dari pengguna. |
Perhatikan di lajur pertama jadual yang setiap penyenaraian kaedah bermula dengan jenis nilai yang dikembalikan oleh kaedah. Kaedah
nextInt
, sebagai contoh, mengembalikan nilai
int
. Juga, perhatikan bahawa setiap kaedah tersebut berakhir dengan satu set kurungan kosong. Ini bermakna kaedah ini tidak memerlukan parameter. Jika kaedah memerlukan parameter, parameter tersebut disenaraikan dalam kurungan ini.
Oleh kerana kaedah ini membaca nilai dari pengguna dan mengembalikan nilai, anda paling sering menggunakannya dalam pernyataan yang memberikan nilai kepada variabel. Baris 11, misalnya, membaca
int
dan menyerahkannya kepada pembolehubah yang dinamakan
x
.
Apabila kaedah
nextInt
dilaksanakan, program itu menunggu pengguna memasukkan nilai dalam tetingkap konsol. Untuk membolehkan pengguna mengetahui apa jenis input yang diharapkan oleh program, biasanya anda perlu memanggil
Sistem. keluar. cetak
kaedah sebelum anda memanggil kaedah
Pengimbas
untuk mendapatkan input. Talian 10 panggilan
Sistem. keluar. cetak
untuk memaparkan mesej
Masukkan integer:
pada konsol. Dengan cara itu, pengguna mengetahui bahawa program sedang menunggu input.
Jika pengguna memasuki nilai yang tidak boleh ditukar kepada jenis yang betul, program tersebut akan crash, yang bermaksud ia tamat secara tiba-tiba. Apabila program runtuh, ia memaparkan mesej ralat cryptic yang menunjukkan apa yang menyebabkan kegagalan. Jika anda memasukkan
tiga
dan bukan nombor yang sebenarnya, contohnya, tetingkap konsol kelihatan seperti ini:
Masukkan integer: tiga Pengecualian dalam thread "utama" java. util. InputMismatchException
di java. util. Pengimbas. throwForFor (Pengimbas java: 819)
di java. util. Pengimbas. seterusnya (Pengimbas java: 1431)
di java. util. Pengimbas. nextInt (Pengimbas java: 2040)
di java. util. Pengimbas. nextInt (Pengimbas java: 2000)
di ScannerApp.utama (ScannerApp. java: 11)
Mesej ini menunjukkan bahawa pengecualian yang dipanggil
InputMismatchException
telah berlaku, yang bermaksud bahawa program itu menjangkakan untuk melihat integer tetapi mendapat sesuatu yang lain. Jika anda tidak tahu bagaimana untuk memberikan pengecualian seperti ini supaya program itu dapat memaparkan mesej yang lebih mesra dan memberi pengguna satu lagi pukulan memasuki nilai yang betul, anda harus menyembunyikan fakta bahawa jika pengguna memasuki data yang salah, program anda crash ungracefully.
Anda boleh menghalang
nextInt
dan kaedah yang sama daripada terhempas dengan data input salah dengan menggunakan salah satu kaedah yang disenaraikan di sini untuk menguji input seterusnya untuk memastikan ia sah. Kaedah Kelas Pengimbas yang Memeriksa Nilai Input Sah
Penjelasan | boolean hasNextBoolean () |
Returns
|
true
jika nilai seterusnya yang dimasukkan oleh pengguna adalah < Nilai boolean
.
boolean hasNextByte ()
Pulangan |
benar
|
jika nilai seterusnya yang dimasukkan oleh pengguna adalah nilai
byte
yang sah.
boolean hasNextDouble ()
Pulangan |
benar
|
jika nilai seterusnya yang dimasukkan oleh pengguna adalah nilai
ganda
yang sah.
boolean hasNextFloat ()
Returns |
true
|
jika nilai seterusnya yang dimasukkan oleh pengguna adalah
float
yang sah.
boolean hasNextInt ()
Pulangan |
benar
|
jika nilai seterusnya yang dimasukkan oleh pengguna adalah nilai
int
yang sah.
boolean hasNextLong ()
Pulangan |
benar
|
jika nilai seterusnya yang dimasukkan oleh pengguna adalah nilai
panjang
yang sah.
boolean hasNextShort ()
Pulangan |
benar
|
jika nilai seterusnya yang dimasukkan oleh pengguna adalah nilai
pendek
yang sah.
|