Modul 3 OOP
Modul 3 OOP
PENDAHULU11AN
2.4 Scanner
Scanner adalah salah satu kelas di Java yang digunakan untuk membaca
input dari berbagai sumber, seperti keyboard, file, atau string. Kelas ini terletak
dalam paket java.util, sehingga harus diimpor terlebih dahulu sebelum digunakan
dengan pernyataan import java.util.Scanner;. Scanner sangat populer karena
menyediakan metode sederhana untuk membaca berbagai tipe data, termasuk
string, integer, float, dan double, yang memudahkan pengembang dalam
menerima input dari pengguna. (Ahmad Syauqi Syuhada, 2023)
Salah satu keunggulan utama Scanner adalah kemampuannya untuk
membaca input secara interaktif dari System.in, yang merujuk pada input standar
(biasanya keyboard). Contohnya, untuk membaca input nama dari pengguna,
program dapat menggunakan metode nextLine() seperti berikut:
Scanner input = new Scanner(System.in);
System.out.print("Masukkan nama Anda: ");
String nama = input.nextLine();
System.out.println("Halo, " + nama + "!");
Tabel 2.2 Scanner
Dalam contoh di atas, metode nextLine() membaca seluruh baris input,
termasuk spasi. Metode lain seperti next() hanya membaca satu kata.
Selain string, Scanner memiliki metode untuk membaca tipe data lainnya.
Metode seperti nextInt(), nextDouble(), dan nextFloat() digunakan untuk
membaca angka sesuai dengan tipe data yang diinginkan. Namun, penting untuk
menangani potensi kesalahan, seperti ketika pengguna memasukkan input yang
tidak sesuai dengan tipe data yang diminta, yang akan menyebabkan
InputMismatchException. Oleh karena itu, penggunaan metode seperti
hasNextInt() atau hasNextDouble() bisa membantu memvalidasi input sebelum
membacanya.
Scanner juga mendukung pemrosesan input dari sumber lain selain
keyboard, seperti file atau string. Untuk membaca dari file, Scanner dapat
diinstansiasi dengan objek File sebagai parameter. Contohnya:
Scanner fileInput = new Scanner(new File("data.txt"));
Tabel 2.3 Objek Baru Scanner
Fleksibilitas ini menjadikan Scanner pilihan yang kuat untuk menangani
berbagai jenis input dalam aplikasi Java. Meski demikian, Scanner bukan selalu
pilihan terbaik untuk data yang sangat besar atau kompleks, karena metode
buffering lain mungkin lebih efisien dalam situasi tersebut.
Salah satu kelebihan utama Scanner adalah kemudahan penggunaannya.
Dengan metode-metode bawaan seperti nextLine(), nextInt(), dan nextDouble(),
Scanner memudahkan pengembang untuk membaca berbagai jenis input dari
pengguna tanpa harus melakukan parsing manual. Scanner juga mendukung
berbagai sumber input, seperti keyboard, file, dan string, yang membuatnya
fleksibel dalam berbagai skenario aplikasi. Selain itu, metode seperti hasNext()
atau hasNextInt() memungkinkan validasi input secara langsung, membantu
mencegah kesalahan akibat tipe data yang tidak sesuai. Fleksibilitas ini
menjadikan Scanner pilihan populer untuk program interaktif. (Andre, 2019)
Namun, Scanner memiliki beberapa kekurangan yang perlu diperhatikan.
Salah satu kelemahannya adalah performa yang lebih rendah saat membaca data
dalam jumlah besar atau data yang membutuhkan buffering tinggi, seperti file
besar atau data jaringan. Dalam kasus seperti ini, kelas seperti BufferedReader
lebih efisien. Scanner juga dapat menimbulkan InputMismatchException jika tipe
data input tidak sesuai dengan yang diminta, sehingga pengembang perlu
menangani pengecualian ini dengan hati-hati. Selain itu, metode seperti nextLine()
dan next() bisa membingungkan jika digunakan bersamaan dengan nextInt() atau
nextDouble(), karena Scanner tidak selalu membersihkan baris input dengan
benar, yang dapat menyebabkan hasil yang tidak diinginkan.
BAB III
PERMASALAHAN
3.1 Permasalahan
A. Buatlah Inputan biodata mahasiswa dengan ketentuan nama, nim, alamat,
jeniskelamin.
outputnya:
Saya [nama] dengan [nim] yang tinggal di [alamat],
Saya seorang [jenis kelamin]
BAB IV
IMPLEMENTASI
4.1 Implementasi
A. Berikut adalah sebuah program java tentang biodata mahasiswa yang dapat
memasukkan data dari keyboard.
5.1 Kesimpulan
Stream adalah sebuah abstraksi yang dapat memberikan atau mendapatkan
informasi. Stream dapat dihubungkan dengan peralatan fisik yang terdapat dalam
system i/o java, seperti keyboard, file, layar consule dan lainnya. Dalam java,
stream didefinisikan dengan menggunakan empat kelas abstrak, yaitu input
stream, output stream, reader, dan writer.
Buffered reader sering digunakan untuk membaca text file. Scanner ini
memang lebih sering digunakan dan lebih populer untuk menangani input dari
user. Meskipun demikan, kita tahu bahwa scanner bisa digunakan untuk membaca
file. Ketika membaca input dari keyboard komputer maka kita dapat
melakukannya dengan membuat objek scanner.
Java menyediakan library yang berisi implementasi dari buffered I/O
streams. Buffered input streams berfungsi untuk membaca data dari area memory
yang disebut sebagai buffer. Sedangkan buffered output streams berfungsi untuk
menulis data ke dalam buffer. Buffered stream menyedikan kelas buffered reader
yang memungkinkan pembacaan data dari peranti yang berbasis karakter, misal
keyboard. Salah satu metode dalam kelas ini yaitu read line() yang
memungkinkan pembacaan sebuah baris teks.
5.2 Saran
Saran yang dapat penulis berikan untuk praktikum kali ini adalah ketika
pada saat praktikum dimulai diharapkan lebih memperhatikan seluruh peserta
praktikum yang mana memahami materi dan kurang memahami terhadap materi.
DAFTAR PUSTAKA
Ahmad Muhardian. (2015, November 15). Belajar Java: Cara Mengambil Input dan
Menampilkan Output. Https://Www.Petanikode.Com/Java-Input-Output/.
Ahmad Syauqi Syuhada. (2023, September 7). Tutorial Java: Input Program Java
Begini Caranya! Https://Mahasiswaupdate.Com/Materi-Kuliah/Cara-Input-Di-
Java/.
Andre. (2019, November 25). Tutorial Belajar Java Part 14: Cara Menginput Data ke
dalam Bahasa Java. Https://Www.Duniailkom.Com/Tutorial-Belajar-Java-Cara-
Menginput-Data-Ke-Dalam-Bahasa-Java/.
Batik Pada Rumah Batik Danar Hadi Andri, K., & Darussalam Pamungkas, A. (n.d.).
Aplikasi Berbasis Java Netbeans Untuk Meningkatkan Hasil Penjualan Usaha.
https://doi.org/10.5281/zenodo.7024153
Onard. (n.d.). JURNAL MARIA 22 JAN. 2015 kopi. www.gammu.org,
Rahmat Musfikar, Ichsanul Akbar, Sarini Vita Dewi, & Aulia Syarif Aziz. (2023). E-
Module Bahasa Pemrograman Java Berbasis Exe-Learning. Jurnal PROCESSOR,
18(1). https://doi.org/10.33998/processor.2023.18.1.704