Java : Membuat Array Karakter dari A – Z


YO!

Dalam bahasa Pascal, kita semua tentu sudah tahu betapa mudahnya cara untuk mendeklarasikan tipe array yang mempunyai value atau nilai tertentu. Contohnya, ketika kita ingin mendeklarasikan suatu array bertipe karakter(char) yang mempunyai nilai dari A sampai Z, maka pendeklarasiaannya cukup seperti ini :
alphabet : array["A".."Z"] of char;

Baru baru ini saya sadar kalau hal tersebut tidak bisa dilakukan di java, lantas bagaimana cara membuat array seperti itu? Inilah cara yang saya temukan.

Array of Defined Character

Pertama-tama, kita harus mendeklarasikan sebuah array of karakter dengan jumlah 26 elemen.

  1. char[] alphabetBesar = new char[26];

Kemudian, coba Anda perhatikan proses perulangan di bawah ini yang berfungsi untuk memasukkan nilai A sampai Z satu persatu ke dalam array :

  1. for(char c = ‘A’; c <= ‘Z’; ++c)
  2. {
  3.     alphabetBesar[c – ‘A’] = c;
  4. }

Saya ingin Anda memperhatikan dua hal pada perulangan tersebut:

  1. Inisialisasi perulangan diawali dengan karakter “A”, ditandai dengan assignment nilai “A” ke dalam variabel c. Dan perulangan akan berhenti jika nilai c sudah sama dengan “Z”.
  2. Assignment nilai ke dalam array yang menggunakan algoritma

    alphabetBesar[c - 'A'] = c;.
    Why? Why on earth you are using that algorithm??!! O.o
    Sudah jangan lebay.

Okay, setelah berpikir beberapa saat, Anda pasti sadar kalau disini saya mengubah karakter menjadi sebuah integer. Masih ingat kode ASCII dari karakter alphabet? Huruf A dimulai dari nilai “65” dan seterusnya.
Berbeda dengan proses pengulangan yang biasanya ditulis,
array[indeks] = char
Disini array saya adalah,
array[char] = [char]
Dan untuk mengubahnya menjadi integer, dimodifikasi menjadi,
array[char - 'A'] = [char]

Lantas, ini adalah suatu fakta bahwa elemen pertama sebuah array pada Java mempunyai indeks nol.

Sudahkah ada bayangan? Bagus! Kalau begitu Anda seharusnya tahu jika “A”(tipe char) dikurangi dengan “A”(tipe char) maka hasilnya adalah 0(integer).
Lalu apabila karakter “D” dikurangi dengan “A”, hasilnya adalah 3.

Sama halnya dengan 68 dikurangi dengan 65, karena 68 dan 65 adalah kode ASCII dari huruf “D” dan “A”.

Do you get the points?

Baiklah, langsung saja inilah source code utamanya,

  1. class ArrayofDefinedChar
  2. {
  3.        
  4.         public static void main(String[] args)
  5.         {
  6.            
  7.             int i;
  8.             char[] alphabetBesar = new char[26];
  9.             for(char c = ‘A’; c <= ‘Z’; ++c)
  10.             {
  11.                 alphabetBesar[c – ‘A’] = c;
  12.             }
  13.            
  14.            
  15.             System.out.println("Isi dari array of character Besar adalah");
  16.             for(i=0; i<=26; i++)
  17.             {
  18.                     System.out.println(alphabetBesar[i]);
  19.             }
  20.            
  21.            
  22.         }
  23. }

Bagaimana dengan array huruf kecil?😀

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s