Underscore (garis bawah) di literal biner dan numerik di program Java

Penggunaan underscore (garis bawah) di literal biner dan numerik merupakan salah satu fitur baru yang ada di Java SE 7. Mulai dari Java SE 7, literal tipe byte, int, sort dan long dapat diekspresikan menggunakan literal biner (binary literal). Ekspresi literal biner ini dimulai dengan menambahkan awalan (prefix) 0b atau 0B. Dalam menggunakannya, satu atau lebih underscore dapat diletakkan dimanapun di antara angka literal biner atau numerik.

Fitur ini membagi angka literal biner atau numerik yang panjang seperti nomor KTP, kartu kredit, kartu ATM dan sebagainya menjadi kelompok-kelompok angka agar mudah dibaca. Underscore di literal biner atau numerik akan dibuang ketika kode program dikompilasi. Ada beberapa batasan yang perlu diperhatikan dimana underscore tidak boleh diletakkan yaitu:

  • Dipermulaan dan diakhir angka.
  • Berdekatan dengan titik desimal dari literal numerik floating-point.
  • Sebelum akhiran L atau l dan F atau f untuk nilai numerik tipe long dan float.
  • Sesudah awalan 0b atau 0B untuk literal biner.
  • Posisi dimana string angka diharapkan.

Baca artikel:

Berikut ini adalah beberapa pernyataan yang membolehkan dan yang tidak terkait letak underscore di literal numerik dan biner Java.

int varC = 0b1000_0000; // Sama dengan 0b1000000.
byte x = 1_23; // Sama dengan 123.
int y = 3___49__6_2; // Sama dengan 34962.
float pi = 3.14_15_9F; // Sama dengan 3.14159.
byte x1 = _123; // Tidak boleh di awal literal numerik.
int y1 = 34962_ ; // Tidak boleh di akhir literal numerik.
float pi1 = 3._14159; // Tidak boleh berdekatan dengan titik desimal.
long q = 2127462549_L; // Tidak boleh sebelum akhiran L.
int z = 0x_55; // Tidak boleh berdekatan awalan 0x di literal heksadesimal.

Contoh program Java di bawah ini terkait penggunaan underscore di literal biner dan numerik. Berikut ini adalah kode program dan hasil eksekusinya di Command Prompt

// Nama file : BinaryUnderscore.java
// Menggunakan literal biner dan karakter garis bawah
 
// Deklarasi kelas
public class BinaryUnderscore {
 
   // Metoda main()
   public static void main(String[] args) {
 
      int a = 0B0_0_1_0;
      int a2 = 0b1000_0000;
      byte b = 1_2_3;
      long b2 = 2_127__462___549L;
      int b3 = 0x5_5;
      long x = a * b;
      int y = a2 * b;
      long z = b2 + b3;
 
      // Menampilkan hasil
      System.out.println();
      System.out.println("Nilai a = " + a);
      System.out.println("Nilai a2 = " + a2);
      System.out.println("Nilai b = " + b);
      System.out.println("Nilai b2 = " + b2);
      System.out.println("Nilai b3 = " + b3);
      System.out.println("Nilai x = " + x);
      System.out.println("Nilai y = " + y);
      System.out.println("Nilai z = " + z);
   }
}
Menggunakan underscore di literal biner dan numerik Java
SUKAI DAN BAGIKAN ARTIKEL INI:
Pin It