Theme images by Storman. Powered by Blogger.

06 September 2017

Memahami Literal Dalam Pemrograman Java

Literal adalah nilai yang ditulis dalam kode program, misalnya nilai yang ditulis untuk memberikan (assign) nilai terhadap sebuah variabel. Ada beberapa jenis literal yaitu integer literal, floating-point literal, boolean literal, character literal, dan String literal. Masing-masing tergantung pada jenis atau tipe data.

Integer literal (Literal bilangan bulat)

Memberi nilai dengan tipe data bilangan bulat (Integer) seperti byte, short, int, dan long. Ada tiga bentuk bilangan bulat yaitu desimal (decimal), oktal (octal) dan heksadesimal (hexadecimal).
  • Desimal adalah bilangan basis sepuluh (10), yang biasa kita gunakan sehari-hari untuk berhitung, yang terdiri dari angka 0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9. Contoh, 100, 186, 999. Dalam kode program ditulis apa adanya.
  • Oktal adalah bilangan basis delapan (8), yang hanya terdiri dari angka 0, 1, 2, 3, 4, 5, 6, dan 7. Contoh, 14, 77, 64. Dalam kode program ditulis dengan awalan (prefix) 0 kemudian diikuti dengan nilai. Contoh, 012, 077, 0567.
  • Heksadesimal adalah bilangan berbasis enam belas (16), yang terdiri dari 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, dan F. Contoh, 9F, FF, 1D, 3E7. Dalam kode program ditulis dengan awalan (prefix) 0x atau 0X diikuti dengan nilai. Contoh, 0xFF, 0X3E7, 0x1D. Nilai heksadesimal tidak case sensitive, sehingga f dengan F dianggap sama.
Contoh 1, Integer Literal dalam kode program LiteralInteger.java
 public class LiteralInteger   
 {   
     public static void main(String[] args)   
     {   
         /*   
           Literal bilangan bulat 10 dalam   
           bentuk desimal, oktal dan heksadesimal.   
         */  

         int desimal = 10;   
         int oktal = 012;   
         int heksadesimal = 0xA;   

         System.out.println("Desimal 10 = " + desimal);   
         System.out.println("Oktal 12 = " + oktal);   
         System.out.println("Heksadesimal A = " + heksadesimal);   
     }   
 }  

Untuk tipe data long, pada akhiran (suffix) nilai tambahkan huruf L atau l. Contoh, 4000000000L, 8430000000L.

Default literal untuk Integer literal adalah int, sebagai contoh, coba anda berikan nilai pada sebuah variabel dengan tipe data long dengan nilai yang lebih besar dari jangkauan nilai tipe data int, tetapi masih dalam jangkauan nilai tipe data long. Misalnya nilai 3.000.000.000 yang berada diluar jangkauan int (+- 2.147.483.647) tapi masih dalam jangkauan long (+- 9.223.372.036.854.775.807).

Contoh 2, Integer Literal dalam kode program LiteralInteger1.java

 public class LiteralInteger1   
 {   
     public static void main(String[] args)   
     {   
       long nilai = 3000000000;   
       System.out.println(nilai);   
     }   
 }   

Jika di kompilasi dan dijalankan maka akan menghasilkan pesan error berikut:
 Literal2.java:5: integer number too large: 3000000000   
           long nilai = 3000000000;   
                  ^   
 1 error  

Seharusnya tipe data long mampu menampung nilai 3.000.000.000, tetapi menimbulkan error karena default literal untuk tipe data bilangan bulat adalah int. Untuk itu, perlu penambahan akhiran huruf L atau l setelah nilai, lebih baik gunakan huruf L untuk membedakan dengan angka 1. Untuk memperbaiki kesalahan ini ubah menjadi long nilai = 3000.000.000L;

Character literal (Literal karakter)

Literal karakter seperti huruf, angka, dan simbol. Literal karakter digunakan untuk memberi nilai pada variabel dengan tipe data char.
  • Nilai diapit dengan tanda kutip satu ( ' ). Contoh, 'A',  '#',  '+',  '1'.
  • Penulisan nilai hanya terdiri dari satu karakter, kecuali escape character dan  unicode notation. Whitespace (spasi) terhitung satu karakter. Anda tidak bisa menulis seperti, ' a', 'ab', '10', '-1'.
  • Untuk escape character, seperti pindah baris, simbol slash ( \ ), kutip satu ( ' ) dan dua ( ” ), tambahkan awalan tanda slash  ( \ ), sebelum simbol tersebut. Contoh, '\n', '\”', '\'', '\\'.
  • Unicode notation dengan menggunakan awalan \u diikuti dengan nilai bilangan bulat dari 0 sampai 65536 dalam bentuk heksadesimal yaitu 0000 sampai FFFF. Contoh, '\u0041', '\u0059', '\u003F'. Nilai heksadesimal tidak case sensitive, sehingga b dengan B dianggap sama.
  • Bisa diberikan dalam bentuk bilangan bulat antara 0 sampai 65536, untuk karakter yang biasa kita gunakan bisa dilihat nilai bilangan bulatnya pada tabel ASCII.
Contoh 3, literal karakter dalam kode program LiteralKarakter.java
 public class LiteralKarakter   
 {    
   public static void main(String[] args)  
   {  
     /*   
      Literal karakter A dalam bentuk  
      karakter, unicode dan bilangan bulat.  
      */  

     char k1 = 'A';  
     char k2 = '\u0041';  
     char k3 = 65;  
     
     // Literal escape character untuk pindah baris.  
     char pb = '\n';  
     System.out.print(k1);  
     System.out.print(k2);  
     System.out.print(pb);  
     System.out.print(k3);  
   }  
 }  

System.out.print(), tidak akan pindah baris setelah menampilkan output, sebaliknya System.out.println(), selalu pindah baris setelah menampilkan nilai.

Floating-point literal (Literal bilangan pecahan)

Floating-point literal menangani nilai pecahan, ada dua tipe data yang menangani bilangan pecahan yaitu float dan double.

  • Aturan penulisan koma di Indonesia tidak bisa kita gunakan dalam program, dengan menggunakan tanda koma ( , ) sebagai pemisah pecahannya. Contoh,  12,5, 99,9. Dalam kode program, digunakan tanda titik ( . ) untuk pemisah pecahannya. Contoh 12.5, 99.9.
  • Default literal untuk Floating-point literal adalah double, sehingga tidak perlu menambahkan akhiran huruf D atau d setelah nilai untuk tipe data double, walaupun hal itu diperbolehkan.
  • Untuk tipe data float harus diberi akhiran huruf F atau f setelah nilai. Contoh, 0.0F, 3.1429F.
  • Dapat menggunakan notasi standar dan scientific. Contoh, 1.005e2, 1.005E-2, 3.1429e1F. E atau e dianggap sama, untuk menyatakan sepuluh pangkat (Exponent). 1.005e2 maksudnya 100.5 x 102 = 10050.0, tanda + bisa juga ditulis setelah E, menjadi 1.005e+2, sedangkan 100.5E-2 maksudnya 100.5 x 10-2 = 1.005
Contoh 4, literal bilangan pecahan dalam program LiteralPecahan.java
 public class LiteralPecahan   
 {    
   public static void main(String[] args)  
   {  
     float pi = 3.1429F;   
     double d1 = 99.0; // Notasi standar.  
     double d2 = 1.23E2; // Notasi scientific.  

     System.out.println(pi);  
     System.out.println(d1);  
     System.out.println(d2);  
   }  
 }  

Boolean literal

Boolean literal digunakan untuk nilai dengan tipe data boolean, nilai hanya true dan false.

Contoh 5, literal boolean dalam program LiteralBoolean.java
 public class LiteralBoolean   
 {    
   public static void main(String[] args)  
   {  
     boolean betul = true;  
     boolean salah = false;  

     System.out.println(betul);  
     System.out.println(salah);  
   }  
 }  

String literal

String literal untuk objek dari class String.
  • Nilai berupa satu atau lebih karakter (deretan karakter).
  • Diapit dengan tanda kutip dua ( “ ). Contoh, “Java Programing”, “Hallo”.
  • Karakter kutip satu ( ' ), tidak dianggap escape character, sehingga tidak perlu ditambah prefix slash ( \ ).
Contoh 6, String literal dalam kode program LiteralString.java
 public class LiteralString   
 {    
   public static void main(String[] args)  
   {  
     String hero = "Superman";  
     String hari = "Jum'at";  

     System.out.println(hero);  
     System.out.println(hari);  
     System.out.println("Teks ini juga bentuk literal string");  
   }  
 }  

0 on: "Memahami Literal Dalam Pemrograman Java"