Membaca Input dengan Scanner
Baca input pengguna dari System.in
Membaca Input dengan Scanner adalah pelajaran Java Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Java Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Java Academy mencakup 4 pelajaran total.
Membaca dari Papan Ketik
Untuk membaca apa yang diketik pengguna, Java menyediakan kelas Scanner dalam paket java.util. Anda menghubungkannya ke System.in, yaitu aliran masukan standar.
Scanner memudahkan pembacaan kata, baris, dan angka.
Membuat Scanner
Buat Scanner dengan meneruskan System.in. Contoh di sini menggunakan teks tetap agar dapat dijalankan tanpa masukan, tetapi metode yang sama berlaku untuk masukan dari papan ketik.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner("Hello");
String word = scanner.next();
System.out.println(word);
scanner.close();
}
}Membaca Satu Kata
next() membaca satu token, yaitu teks hingga spasi kosong berikutnya. Spasi dan baris baru memisahkan token.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner("apple banana cherry");
System.out.println(scanner.next());
System.out.println(scanner.next());
scanner.close();
}
}Membaca Satu Baris Penuh
nextLine() membaca semuanya hingga akhir baris, termasuk spasi. Gunakan metode ini ketika masukan berisi beberapa kata yang ingin Anda baca sebagai satu kesatuan.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner("John Smith");
String fullName = scanner.nextLine();
System.out.println("Name: " + fullName);
scanner.close();
}
}Memeriksa Masukan Berikutnya
hasNext() mengembalikan nilai true selama masih ada token. Dengan begitu, Anda dapat melakukan perulangan hingga masukan habis.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner("red green blue");
while (scanner.hasNext()) {
System.out.println(scanner.next());
}
scanner.close();
}
}Membaca Baris demi Baris
Pasangkan hasNextLine() dengan nextLine() untuk memproses masukan yang terdiri dari beberapa baris, satu baris setiap kali.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner("line one\nline two\nline three");
while (scanner.hasNextLine()) {
System.out.println("> " + scanner.nextLine());
}
scanner.close();
}
}Contoh Papan Ketik Nyata
Untuk masukan pengguna yang sebenarnya, Anda dapat menulis baris-baris di bawah ini. Cobalah secara lokal: program akan menunggu di nextLine sampai Anda mengetik dan menekan Enter.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your name: ");
String name = scanner.nextLine();
System.out.println("Hello, " + name);
scanner.close();
}
}Menutup Scanner
Memanggil close() melepaskan sumber daya. Pendekatan yang lebih rapi adalah menggunakan sumber daya otomatis, yang menutup pemindai secara otomatis saat blok berakhir.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
try (Scanner scanner = new Scanner("data here")) {
System.out.println(scanner.next());
}
}
}next dibandingkan nextLine
Ingat perbedaan utamanya: next() berhenti pada spasi kosong dan mengembalikan satu token, sedangkan nextLine() mengambil sisa baris saat ini.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner("first second third");
System.out.println(scanner.next());
System.out.println(scanner.nextLine());
scanner.close();
}
}Pembatas Khusus
Anda dapat mengubah pemisah token dengan useDelimiter. Di sini koma memisahkan nilai, bukan spasi kosong.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner("a,b,c");
scanner.useDelimiter(",");
while (scanner.hasNext()) {
System.out.println(scanner.next());
}
scanner.close();
}
}Dasar-Dasar Scanner
Buat satu Scanner pada System.in, gunakan next untuk kata dan nextLine untuk seluruh baris, lakukan perulangan dengan keluarga hasNext, dan selalu tutup pemindai tersebut.
Pemeriksaan Singkat
Uji dasar-dasar Scanner Anda.
Ringkasan
Anda telah mempelajari cara membaca masukan dengan Scanner:
- Buat dengan
new Scanner(System.in) next()membaca satu kata, sedangkannextLine()membaca satu baris penuh- Lakukan perulangan dengan
hasNext()atauhasNextLine() - Tutup dengan
close()atau menggunakan sumber daya otomatis useDelimitermengubah pemisah token
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Membaca Input dengan Scanner” gratis?
Ya — teks lengkap “Membaca Input dengan Scanner” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Java Academy, upgrade ke CoddyKit PRO. Kursus Java Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Membaca Input dengan Scanner”?
Baca input pengguna dari System.in Kamu berlatih Java Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Java Academy?
Tidak diperlukan pengalaman sebelumnya. Java Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Membaca Input dengan Scanner” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Java Academy ini?
Ya. Setiap pelajaran Java Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Membaca Input dengan Scanner
- Membaca Bilangan dan Baris
- Memvalidasi Input Pengguna
- Alternatif BufferedReader