Bab 1, Input dan Output

Output dasar

Dalam Java, untuk menampilkan suatu teks ke standard output kita akan menemui 3 jenis method yang akan digunakan, yaitu:

  • System.out.print()
  • System.out.println()
  • System.out.printf()

Ketiga method tadi memiliki perbedaan. System.out.print() akan mencetak string ke standard output tanpa menyertakan newline character atau \n. Lain halnya dengan System.out.println(), ia akan menambahkan newline character.

Khusus System.out.printf() akan mencetak string sesuai format yang telah didefinisikan sebelumnya. Macam-macam format atau format specifier akan diberikan di akhir tulisan ini ;)

Contoh code 1

public static void main(String[] args) {
    System.out.println("Halo");
    System.out.print("Selamat datang di ");
    System.out.print("Pemrograman Dasar dengan Java");
    System.out.println();
}

Akan menghasilkan output

Halo
Selamat datang di Pemrograman Dasar dengan Java

Format specifier

Basically, format specifier yang wajib dipahami sebagai berikut

Format specifier Tipe data
%d Integer, basis 10
%x Integer, basis 16
%o Integer, basis 8
%s String
%c Char

Untuk escape character sebagai berikut

Escape character Penjelasan
\a audible bell
\b backspace
\n newline
\t tab
\f form feed
\r carriage return
\v vertical tab
\ backslash

Contoh code untuk printf()

public static void main(String[] args) {

    // code nya taruh disini.
    int varInt = 45;
    float varFloat = 6.97f;
    double varDouble = 7.98845;

    char varChar = 'X';
    String varString = "Ini sebuah String";

    System.out.printf("%d\n", varInt);
    System.out.printf("%e\n", varDouble);
    System.out.printf("%c\n", 9875);
    System.out.printf("%.3s\n", varString);

    System.out.format("%s\n", varString);

    System.out.println();

    /* mencetak isi variabel melalui println harus menggunakan + (string concate)
       setelah string yang telah ditutup. */
    System.out.println("Ini adalah string yang dicetak dari println : "+varString);
}

Input

Untuk membuat program yang lebih interaktif, kita bisa menggunakan class Scanner atau BufferedReader untuk menginputkan sesuatu via standard input (stdin). Untuk bahasan ini kita fokus ke penggunaan Scanner.

Langkah pertama kita harus menginstansiasi sebuah obyek bertipe Scanner. Penjelasan instansiasi silakan cari sendiri.

Scanner [namaIdentifier] = new Scanner(System.in);
// Contoh instansiasi
Scanner in = new Scanner(System.in);

Untuk melakukan input ke tipe data tertentu, kita wajib mengenal method-method ini

Method Tipe data tujuan
nextInt() Integer
nextFloat() Float
nextDouble() Double
next() String, hanya satu kata
nextLine() String

Khusus nextLine() dan next() ada perbedaan.

// Contoh kode
String s;
Scanner in = new Scanner(System.in);
s = in.next();
System.out.println("Nilai s dengan next() : "+s);
s = in.nextLine();
System.out.println("Nilai s dengan nextLine() : "+s);

Contoh jika dijalankan

-> Saya seorang bajak laut
Nilai s dengan next() : Saya
-> Saya seorang bajak laut
Nilai s dengan nextLine() : Saya seorang bajak laut

-> menandakan string yang diinputkan user.

Dokumentasi tentang Scanner silakan cek disini