Memformat tampilan nilai dengan metoda printf kelas System di Java

Program Java memiliki metoda print dan println dari kelas System untuk menampilkan teks atau nilai di Command Prompt. Di banyak contoh program Java selain di artikel ini, Anda telah diperkenalkan pada metoda println. Di artikel kali ini, Anda diperkenalkan pada metoda lain dari kelas System untuk menampilkan nilai di Command Prompt yang membolehkan pemformatan tampilan nilai. Metoda yang dimaksud adalah printf.

Adapun sintaksis penulisan metoda printf dari kelas System di Java adalah sebagai berikut:

System.out.printf(strFormat, penentuFormat);

Argumen dari parameter strFormat adalah string yang dapat terdiri dari substring dan penentu format (specifier). penentuFormat menetapkan pola pemformatan dari item yang ditampilkan. Item di sini dapat berupa nilai numerik, karakter, nilai boolean atau string. Berikut ini adalah tabel penentu format yang dapat digunakan untuk menentukan pola pemformatan item yang ditampilkan.

Tabel Penentu Format (Specifier)

Penentu Format (Specifier) Tampilan Contoh
%b Nilai Boolean true atau false
%c Karakter ‘c’
%d Desimal integer 350
%f Pecahan decimal 243.45
%e Numerik dalam notasi ilmiah 3.457000e+01
%s String “Selamat Datang Java”

Berikut ini adalah penggalan kode program untuk memformat tampilan dengan metoda printf di Java:

int nilaiInt = 70;
double nilaiDouble = 243.45;
System.out.printf("Nilai integer = %d dan nilai double = %f", nilaiInt, nilaiDouble);

Argumen metoda printf adalah string yang di dalamnya terdapat dua penentu format yaitu %d dan %f. Tanda % mengacu pada penentu format. %d untuk desimal integer dan %f untuk pecahan desimal. Variabel nilaiInt dan nilaiDouble adalah item yaitu variabel yang nilainya akan diformat, diletakkan dan ditampilkan di tempat dimana specifier ditulis di argumen string. Specifier dan item harus sama, baik dalam urutan, jumlah dan tipe data yang diwakili.

Pernyataan di atas menghasilkan tampilan sebagai berikut:

Nilai integer = 70 dan nilai double = 243.450000

Dalam memformat tampilan, nilai pecahan desimal ditampilkan dengan enam angka di belakang tanda desimal titik, seperti literal desimal 243.450000. Digit atau angka di belakang tanda desimal tampak begitu panjang. Anda dapat menentukan sendiri lebar dan ketepatan penentu format. Tabel berikut ini adalah beberapa contoh variasi penggunaan penentu format:

Variasi Penentu Format (Specifier)

Contoh Variasi Specifier Keterangan
%6c Menampilkan karakter dan menambah lima spasi kosong sebelum nilai karakter.
%8b Menampilkan nilai desimal dan menambah tiga spasi sebelum nilai false dan dua spasi sebelum nilai true.
%5d Menampilkan integer dengan lebar sedikitnya lima. Jika jumlah angka kurang dari lima, menambahkan spasi sebelum angka.
%11.2f Menampilkan floating-point (pecahan desimal) dengan lebar sedikitnya sebelas termasuk tanda desimal titik dan dua dijit setelah tanda desimal. Ada delapan angka dialokasikan sebelum tanda desimal. Jika dijit sebelum tanda desimal lebih sedikit, menambahkan spasi sebelum dijit.
%11.2e Menampilkan floating-point (pecahan desimal) dengan lebar sedikitnya sebelas termasuk tanda desimal (titik), dua dijit (angka) setelah tanda desimal dan bagian eksponen. Jika tampilan jumlah dalam notasi ilmiah kurang dari sebelas, menambahkan spasi sebelum notasi ilmiah tersebut.
%13s Menampilkan string dengan lebar sedikitnya tiga belas karakter. Jika karakter string kurang dari tiga belas, menambahkan spasi sebelum string.

Pernyataan baris terakhir dapat diubah atau dimodifikasi, misalnya saja Anda ingin hanya dua spasi sebelum digit desimal dan tiga digit setelah tanda desimal titik. Berikut ini adalah modifikasi dari pernyataan terakhir:

System.out.printf("Nilai integer = %d dan nilai double = %9.3f", nilaiInt, nilaiDouble);

Pernyataan yang telah dimodifikasi pada bagian specifier terakhir menghasilkan tampilan sebagai berikut:

Nilai integer = 70 dan nilai double = 243.450
SUKAI DAN BAGIKAN ARTIKEL INI:
Pin It