Menformat Output Dengan Printf Java



Pemformatan Print Menggunakan Printf di Java


System.out.printf memang tidak umum untuk digunakan karena memang kita harus memformat sendiri karakter yang akan kita print berbeda sekali dengan System.out.print dan System.out.println yang di mana kita tidak perlu menformat karakter yang akan di print kalaupun kita menformat karakter di System.out.print dan System.out.println paling itu hanya sekedar tanda + untuk menggabungkan String dengan variable misalnya ataupun escape character seperti /n,/f,/r dan /u

Namun dengan menggunakan System.out.printf kita bisa menformat karakter dengan lebih expert lagi seperti mengubah huruf jadi besar semua, membatasi jumlah karakter, membulatkan bilangan dll akan saya bahas di sini

Karakter Konversi
Sebelum memulai, kita harus tahu dulu apa karakter konversi untuk masing-masing tipe data di java.Karakter konversi ini sangat penting untuk menentukan bagaimana karakter dengan tipe data tersebut di format

s String
b Boolean
c Char
d Integer (Short,Byte,Long juga berlaku)
f Float dan Double
t Tanggal dan Waktu           
n baris baru

1) Penformatan String

String merupakan tipe data untuk menyimpan tulisan beberapa karakter sekaligus.Untuk menggunakan String kita memakai " untuk awal dan akhir String misalnya "Nama"

%s digunakan untuk menformat karakter dengan tipe data String untuk cara menulisnya seperti ini

Menformat String Dengan Printf Java


Contoh Menformat String Dengan Printf Java


%s untuk katanya lalu %n untuk menuju ke baris baru.Kalau kita ingin hurufnya besar semua kita bisa mengganti %s dengan %S

Menformat String Dengan Printf Java 2


Contoh Output String yang diFormat Java


Kalau kita ingin lebar karakter tertentu kita bisa menggunakan %10s (untuk 10 karakter)

Menformat String Pada Java 3


Contoh Output String yang diFormat Java 2

     
Karena “Dewan” di sini cuma 5 karakter maka akan menyisakan 5 spasi di sebelah kiri dan        karena “Tara” di sini hanya 4 karakter maka akan menyisakan 6 spasi di sebelah kiri
Kalau kita memasukkan jumlah karakter yang lebih sedikit misalnya 4 karakter untuk “Dewan” maka yang tercetak tetap full “Dewan” tanpa ada spasi sedikitpun

Kalau kita ingin ada spasi di sebelah kanan kita bisa memakai %-10s 
Menformat String dengan Printf Java 4


Contoh String yang diFormat Java 3



Kita hilangkan dulu %n hanya untuk membuktikan kalau penformatan ini bekerja.Kita lihat kalau “Dewan” memberikan 5 spasi di sebelah kanan lalu “Tara” baru di cetak

Kita bisa juga memberi batas minimal dan maksimal karakter yang bisa dimasukkan dengan menggunakan %5.8s (jumlah minimal karakter 5 dan maksimal nya 8)




Hanya “Dewantar” yang dicetak karena kita sudah membatasi jumlah karakter maksimalnya adalah 8 sedangkan “Dewantara” memiliki 9 karakter

2) Penformatan Integer 

Integer merupakan tipe data untuk menyimpan bilangan bulat untuk cara menggunakannya adalah langsung saja tulis angkanya misal 7 kalau mau dimasukkin ke variabel caranya adalah menulis int namavariabel = nilai; contoh int a =7;

Untuk Integer,kita menggunakan %d untuk menformatnya 




Di sini kita mencetak “Jumlah Warna Pelangi ada” kemudian untuk mencetak 7 kita menggunakan %d lalu %n untuk berpindah ke baris baru

Biasanya kalau kita menyatakan angka ribuan dan seterusnya kita akan memerlukan tanda pemisah setiap 3 angka kita bisa memakai tanda koma setelah % jadi %,d

Untuk tipe data Short, Byte dan Long juga bisa menggunakan %d untuk penformatannya
  
3) Penformatan Float dan Double


float dan double adalah tipe data untuk menyatakan bilangan desimal.Perbedaan nya float memiliki presisi 7 digit sedangkan double memiliki presisi 15 digit.Untuk float kita harus menggunakan huruf f misalnya 7.5f sedangkan untuk double kita tidak perlu memakai huruf misalnya 7.5

Kita bisa menggunakan %f untuk menformat float dan double.Seperti ini contohnya

Kalau kita ingin membatasi lebar angka dan desimalnya kita bisa menggunakan format %5.2f (5 untuk lebar angka dan 2 untuk banyak bilangan desimal maksimalnya)


4) Penformatan Boolean

Kita memakai %b untuk Boolean. Kalau kalian belum tahu,Boolean hanya memiliki 2 nilai yaitu true dan false.true untuk menyatakan kondisi benar dan false untuk menyatakan kondisi salah

Sama seperti String,kalau kita ingin tulisan true atau false dengan huruf besar maka tinggal diganti saja dengan %B

Contoh penformatan boolean









  
Kita menyatakan a dengan nilai 25 dan b dengan nilai 30 lalu kita menyatakan Boolean c dengan a>b.Karena 25 tidak lebih besar dari 30 maka nilai c adalah false.
Kita cetak dulu “25 lebih besar dari 30” lalu jika c kita format dengan %B maka akan menghasilkan output “25 lebih besar dari 30 adalah FALSE”

Untuk lebih memahami tentang tipe data Boolean anda bisa mempelajari operator relasi,kondisional dan logika di java

Percabangan dan perulangan juga sangat berkaitan dengan tipe data Boolean ini

5) Penformatan Char

Char merupakan tipe data khusus untuk menyimpan satu karakter saja dan untuk menggunakannya harus pakai tanda apostrophe (‘) misalnya ‘a’.

Untuk penformatan char sendiri menggunakan %c sama seperti tipe data yang lain menggunakan huruf besar akan menformat karakter tersebut menjadi huruf besar 




Kita cetak dulu “UniCode 0049 adalah huruf” %c untuk menformat char %n untuk baris baru kemudian ‘\u0049’ merupakan escape character untuk mendapatkan huruf I berdasarkan UniCode 

6) Penformatan Tanggal dan Waktu

Untuk bisa menampilkan tanggal dan waktu kita perlu mengimpor class java.util.Date.

a) Penformatan Tanggal

kalau kita ingin tanggal saja tanpa format apapun kita bisa memakai %tD 

package mainclass;
import java.util.Date;
public class MainClass {
    public static void main(String[] args) {
        Date waktu = new Date();//buat objek bernama waktu dari class Date
        System.out.printf("%tD%n", waktu);//menformat tanggal 
    }
 
}

kode tersebut akan menghasilkan output 

01/20/20
formatnya adalah bulan/hari/tahun untuk penformatan yang lebih jauh kita membutuhkan karakter tambahan seperti berikut

A Nama Hari Secara Penuh contoh Monday
a Nama Hari Secara Singkat contoh Mon
B Nama Bulan Secara Penuh contoh January
b Nama Bulan Secara Singkat contoh Jan
Y 4 Digit Tahun contoh 2020
d 2 digit tanggal contoh 02
e hari dari bulan contoh 2
m 2 digit bulan contoh 05
y 2 digit terakhir tahun contoh tahun 2015 akan menjadi 15
j Hari ke dari tahun contoh 257


untuk memakai karakter tersebut kita perlu karakter '%1$t' didepannya sebagai contoh %1$tA'

b) Penformatan Waktu

Kalau kita cuma ingin menampilkan waktu tanpa diformat terlebih dahulu kita bisa memakai %tT


format standarnya adalah jam:menit:detik 


H 2 digit jam 0-23 contoh 21
I 2 digit jam 0-12
k sama seperti H hanya saja tidak pakai 0 kalau 1 digit contoh 2
l sama seperti I hanya saja tidak pakai 0 kalau 1 digit contoh 2
M 2 digit menit
S 2 digit detik
p untuk tanda am dan pm
z Offset waktu dari GMT contoh +0700
Z nama zona waktu contoh ICT  

untuk menerapkan beberapa format sekaligus kita harus menggunakan "%1$t" sama seperti penformatan tanggal



contoh penerapan


c) Format lain untuk tanggal dan waktu

kita bisa menggunakan %tr untuk menampilkan waktu dalam format 12 jam dengan penanda am atau pm


%tF untuk menampilkan tanggal dengan format tahun-tanggal-bulan 
%tc untuk menampilkan tanggal dan waktu sekaligus sama dengan format "%1$ta %1$tb %1$td %1$tT %1$tZ %1$tY"



Mungkin itu saja dulu postingan tentang cara menformat output menggunakan printf di java.Semoga bisa bermanfaat dan terima kasih



Jangan spam atau promosi di sini jgn juga taruh link aktif kalau mau dapat backlink bisa taruh di profil saja (Name/URL)
EmoticonEmoticon