Cara Mendapatkan Input dan Menampilkan Output pada Java


Assalamualaikum Warahmatullahi Wabarakatuh.

Dalam pemrograman Java, ada beberapa class yang bisa kita digunakan untuk mengambil input dari user, yaitu Scanner, BufferedReader dan JOptionPane, ketiga class tersebut mempunyai fungsi yang sama, akan tetapi pada JOptionPane, class ini memiliki tampilan visual atau GUI.

Cara menggunakan Scanner, BufferedReader, JOptionPane pada Java

Sebuah project aplikasi pastinya memerlukan input data dari user untuk diproses menjadi output, dalam java kita dapat membuat program yang memungkinkan user untuk menginputkan data pada sebuah variable dan mencetak hasilnya pada layar monitor.

A. Class Scanner

Untuk menggunakan Scanner, kita perlu membuat objek dari class Scanner, class tersebut berada didalam package java.util.*, jadi kita perlu menginport packagenya terlebih dahulu, setelah package dan objek selesai dibuat, selanjutnya kita membutuhkan sebuah variabel untuk menampung nilai yang di inputkan dari user.

Kita akan membuat program sederhana menggunakan scanner, pada program tersebut user diminta untuk menginputkan sesuatu, hasilnya akan di cetak menggunakan System.out.println(), coba kalian perhatikan contoh program berikut ini:

//Package Yang Dibutuhkan Untuk Memuat Class Scanner
import java.util.Scanner;

public class input_example {
    public static void main(String[] args){
        Scanner input = new Scanner(System.in); //Membuat Objek dari Class Scanner
        String nama; //Variabel String, Untuk Menyimpan Input dari User
        System.out.print("Siapa Nama Kamu: ");
        nama = input.nextLine(); //Mendapatkan Input dari User
        System.out.println("Nama Saya "+nama); //Mencetak Output
    }
}

Demo

WildanTechnoArt-Scanner Example

Untuk menyimpan data String, kita bisa menggunakan method next() atau nextLine() pada Scanner, selain tipe data String, ada beberapa method lainnya yang bisa kalian gunakan pada Scanner, diantaranya:
  • nextInt - Menerima input bilangan bulat/Integer
  • nextBoolean - Menerima input Boolean (true/false)
  • nextFloat - Menerima input pecahan/Float
  • nextDouble - Menerima input pecahan/Double
  • nextByte - Menerima bilangan bulat/Byte
  • nextLong - Menerima bilangan bulat/Long
  • nextShort - Menerima bilangan bulat/Short

Untuk contoh yang kedua, kita akan membuat program penjumlahan dengan menggunakan tipe data angka seperti Integer pada scanner.

import java.util.Scanner;

public class input_example {
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        int angka1, angka2, jumlah;
        System.out.print("Masukan Input Pertama: ");
        angka1 = input.nextInt();
        System.out.print("Masukan Input Kedua: ");
        angka2 = input.nextInt();
        jumlah = angka1 + angka2;
        System.out.println("Jumlah: "+jumlah);
    }
}

Demo

Contoh Penggunaan Scanner menggunakan Integer

B. Class BufferedReader

Pada bagian ini, kita akan menggunakan class BufferedReader, class tersebut berada di dalam package java.io, class ini dignakan untuk mendapatkan input dari user, hampir sama seperti Scanner, yang membedakan hanya cara penulisan syntaxnya saja.

Baca Juga:

Untuk menggunakannya class tersebut, terlebih dahulu kita harus mengimport bebrapa package berikut ini:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

Agar lebih mudah, kalian dapat menuliskannya sepert ini:

import java.io.*; //Mengeluarkan semua class yang berada didalam package tersebut

Pada contoh berikut ini, disana kita membuat objek dari class BufferedReader, untuk mendapatkan input dari user, kita perlu menggunakan method readLine() dan jangan lupa untuk menambahkan try-catch untuk berjaga jaga jika terjadi kesalahan saat proses input berlangsung.

import java.io.*;

public class input_example {
    public static void main(String[] args){
        //Membuat Objek dari Class BufferedReader
        BufferedReader input = 
        new BufferedReader(new InputStreamReader(System.in));
        String Universitas; //Variable Untuk Meynimpan data
        try{
            System.out.print("Masukan Universitas: ");
            Universitas = input.readLine();//Mendapatkan Input String dari User
            System.out.println("Saya Kuliah Di "+Universitas); //Cetak Output
        }catch(IOException ex){
            // Jika terdapat kesalahan saat menginputkan data
            System.out.println("Terjadi Kesalahan pada Input");
        }
    }
}

Demo

Contoh Program Menggunakan BufferedReader

Pada class tersebut, jika kita ingin menjumlahkan 2 buah angka misalnya bilangan bulat/Integer, kita harus memparsenya terlebih dahulu, seperti beikut ini:

int angka1, angka2, jumlah = 0;
        try{
            System.out.print("Masukan Input Pertama: ");
            angka1 = Integer.parseInt(input.readLine());
            System.out.print("Masukan Input Kedua: ");
            angka2 = Integer.parseInt(input.readLine());
            jumlah = angka1+angka2;
            System.out.println("Jumlahnya: "+jumlah);
        }catch(IOException ex){
            System.out.println("Terjadi Kesalahan pada Input");
        }

Demo

Contoh Program Menggunakan BufferedReader dengan tipe data Integer

C. Class JOptionPane

Cara terakhir untuk mendapatkan input dari user adalah dengan menggunakan class JOptionPane calss tersebut terdapat pada package javax.swing. berbeda dari class sebelunya, JOptionPane memiliki tampilan visual atau GUI untuk memudahkan pengguna, tampilan tersebut berupa dialog box standard yang memfasilitasi kepada user untuk mengkonfirmasi sesuatu.

Contoh programnya seperti berikut ini:

// Mengimport Class JOptionPane
import javax.swing.JOptionPane;

public class input_example {
    public static void main(String[] args){
        String nama; // Variale String Untuk Menyimpan Input
        //Memunculkan Pesan Dialog serta Menerima Input Dari User
        nama = JOptionPane.showInputDialog("Siapa Nama Kamu?");
        //Menampilkan Pesan kepada User
        JOptionPane.showMessageDialog(null, "Salam Kenal "+nama);
    }
}

Demo

Menerima Input dari User:

Menerima Input dari User menggunakan JOptionPane

Memunculkan Pesan:

Memunculkan Pesan menggunakan JOptionPane

Semoga membantu dan bisa bermanfaat untuk kalian semua, mohon maaf bila ada kesalahan.

Wassalamualaikum Warahmatullahi Wabarakatuh.

Wildan M Athoillah
Wildan M Athoillah Blogger dan spesialis pembuat aplikasi android.