Membaca Input Dari User Memakai Class Bufferedreader Pada Java
BufferedReader merupakan salah satu class yang paling banyak dipakai dalam pemrograman Java. Pada kesempatan kali ini kita akan mencoba memahami syntax dasar, penggunaan method dan juga prinsip dari class tersebut untuk membaca input dari user.
Berikut ini yaitu hirarki dari class tersebut:
java.lang.Object
java.io.Reader
java.io.BufferedReader
Fungsi dasar dari BufferedReader yaitu membaca file dari input stream. Lebih spesifik lagi bahwa class ini dipakai sebagai buffer dari karakter-karakter dengan tujuan menciptakan penanganan yang lebih efisien untuk string, character, dan array.
Terdapat dua constructor untuk class BufferedReader ini, yaitu:
Contoh arahan program:
Output:
Makara apa bekerjsama maksud dan tujuan dari referensi aktivitas di atas? Pada dasarnya aktivitas itu hanya mendapatkan input pengguna dari konsol dan kemudian mencetak pesan selamat datang.
Selanjutnya mari kita pahami setiap bab arahan tersebut. Pertama-tama, objek BufferedReader dibentuk dengan konstruktor yang memakai Reader sebagai argumen. Setelah itu, user akan diminta memasukkan namanya pada konsol melalui keyboard dengan System.out.print ("Masukkan nama Anda: "). Kemudian objek StringBuffer diinisialisasi dengan konten inisial "Selamat tiba ". Silakan anda membaca mengenai StringBuffer untuk memahaminya lebih lanjut. Tujuan dari mendeklarasikan StringBuffer “stringBuffer” yaitu untuk mempersiapkan pesan selamat datang, yaitu "Selamat tiba NamaUser".
Kemudian input pengguna berupa baris text dibaca memakai method class BufferedReader yaitu readLine(). Metode ini akan mengembalikan baris lengkap dari representasi String sesuai dengan apa yang telah dimasukkan oleh user pada konsol. Hasil dari method readLine() itu digabungkan dengan konten StringBuffer memakai method append(). Method close() dipanggil untuk menutup stream sehingga sanggup menghindari kebocoran memori (memory leak) dan komplikasi lebih lanjut pada arahan aktivitas tersebut.
Anda mungkin juga memperhatikan bahwa pada arahan tersebut terdapat blok try-catch dan ini merupakan bab dari exception handling. Hal ini dikarenakan readLine() dan close () melemparkan IOException sehingga anda harus menangkapnya (catch) atau melemparkannya (throw) kembali. Dengan demikian kalau terjadi error pada ketika mendapatkan input dari user maka anda akan mendapatkan pesan dan stack trace lengkap mengenai apa yang terjadi.
Berikut ini yaitu hirarki dari class tersebut:
java.lang.Object
java.io.Reader
java.io.BufferedReader
Fungsi dasar dari BufferedReader yaitu membaca file dari input stream. Lebih spesifik lagi bahwa class ini dipakai sebagai buffer dari karakter-karakter dengan tujuan menciptakan penanganan yang lebih efisien untuk string, character, dan array.
Terdapat dua constructor untuk class BufferedReader ini, yaitu:
- BufferedReader(Reader in)
- BufferedReader(Reader in, int sz)
Namun, biar lebih gampang untuk memahaminya, maka kita hanya akan memakai constructor yang pertama dimana constructor itu hanya mengambil Reader sebagai argumennya.
Berikut ini yaitu referensi bagaimana menciptakan objek dari class BufferedReader:
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
Contoh arahan program:
package com.bahasajava.io; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; //Membaca input dari user melalui konsol dengan memakai BufferedReader public class ContohBufferedReader { public static void main(String[] args) { //Membuat objek BufferedReader BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); //Membuat user prompt untuk menginput nama System.out.print("Masukkan nama anda: "); //Membuat objek StringBuffer StringBuffer stringBuffer = new StringBuffer("Selamat tiba "); //Membaca input dari user try { //Menggabungkan string Selamat tiba dengan baris text yang berasal dari //input oleh user stringBuffer.append(bufferedReader.readLine()); //menutup objek BufferedReader bufferedReader.close(); //Menampilkan string sesudah mendapatkan input dari user System.out.println(stringBuffer); //Menangkap exception yang mungkin terlempar ketika user memasukkan input } catch (IOException e) { System.out.println("Error terjadi ketika mencoba mendapatkan input dari user: " + e.getMessage()); e.printStackTrace(); } } }
Output:
Masukkan nama anda: Nesta Rama Selamat tiba Nesta Rama
Makara apa bekerjsama maksud dan tujuan dari referensi aktivitas di atas? Pada dasarnya aktivitas itu hanya mendapatkan input pengguna dari konsol dan kemudian mencetak pesan selamat datang.
Selanjutnya mari kita pahami setiap bab arahan tersebut. Pertama-tama, objek BufferedReader dibentuk dengan konstruktor yang memakai Reader sebagai argumen. Setelah itu, user akan diminta memasukkan namanya pada konsol melalui keyboard dengan System.out.print ("Masukkan nama Anda: "). Kemudian objek StringBuffer diinisialisasi dengan konten inisial "Selamat tiba ". Silakan anda membaca mengenai StringBuffer untuk memahaminya lebih lanjut. Tujuan dari mendeklarasikan StringBuffer “stringBuffer” yaitu untuk mempersiapkan pesan selamat datang, yaitu "Selamat tiba NamaUser".
Kemudian input pengguna berupa baris text dibaca memakai method class BufferedReader yaitu readLine(). Metode ini akan mengembalikan baris lengkap dari representasi String sesuai dengan apa yang telah dimasukkan oleh user pada konsol. Hasil dari method readLine() itu digabungkan dengan konten StringBuffer memakai method append(). Method close() dipanggil untuk menutup stream sehingga sanggup menghindari kebocoran memori (memory leak) dan komplikasi lebih lanjut pada arahan aktivitas tersebut.
Anda mungkin juga memperhatikan bahwa pada arahan tersebut terdapat blok try-catch dan ini merupakan bab dari exception handling. Hal ini dikarenakan readLine() dan close () melemparkan IOException sehingga anda harus menangkapnya (catch) atau melemparkannya (throw) kembali. Dengan demikian kalau terjadi error pada ketika mendapatkan input dari user maka anda akan mendapatkan pesan dan stack trace lengkap mengenai apa yang terjadi.
Belum ada Komentar untuk "Membaca Input Dari User Memakai Class Bufferedreader Pada Java"
Posting Komentar