Rabu, 10 Oktober 2012

ARRAY 1 DIMENSI DAN MULTI DIMENSI
  
apa yang kamu ketahui tentang array 1 dimensi  dan multi dimensi? yuks kita baca terlebih dahulu.... ARRAY 1 DIMENSI
Definisi array
Suatu urutan lokasi yang berdampingan (contiguous) yang dapat diakses dengan satu 
nama tunggal dan diikuti subskrip integer (index array).  Variabel Jamak (lebih dari satu lokasi penyimpanan) dengan indeks yang 
digunakan sebagai penunjuk urutan data.  Struktur data yang menyimpan sekumpulan  elemen yang bertipe sama, dimana setiap 
elemen diakses secara langsung melalui indeksnya. 
 Kumpulan dari nilai-nilai data (elemen array/larik) yang bertipe sama dalam urutan 
tertentu (ditunjukan oleh  subsricpt atau indeks) yang menggunakan sebuah nama yang 
sama. Nilai-nilai tersebut disebut dengan elemen-elemen array dengan urutan tertentu 
yang ditunjukan dengan index array. 
 Tipe data terstruktur yang terdapat dalam  memori yang terdiri atas sejumlah elemen 
(tempat) yang mempunyai tipe data yang sama dan merupakan gabungan dari beberapa 
variable sejenis serta memiliki jumlah komponen yang tetap.3
 Suatu variabel yang merepresentasikan daftar (listI) atau kumpulan data yang memiliki 
tipe data sama. Setiap data yang terdapat dalam array tersebut (disebut juga sebagai 
elemen array) menempati alamat memori yang berbeda, untuk mengakses nilai dari 
suatu elemen array digunakan indeks


Setiap elemen array dapat di akses melalui indeks,indeks array secara default mulai dari nol 
Array 1 dimensi adalh list dari variabel berelasi.contoh penggunaanya ,array ini dapat dipakai untuk menyimpan nomor account dari user yang sedang menggunakan network.
untuk dapat mendeklariskan array di java,adalah sebagai berikut:

Cara 1 : TipeArray[] namaArray

Cara 2 : TipeArray namaArray[]


type menjelaskan tentang tipe data yang di simpan di array,size adalah jumlah elemen yang disimpan di array.
semua array dalam java secara dinamis akan dialokasikan dengan menggunakan operator new.

Declare (membuat reference variabel array) 
 Construct (membuat object array)
 Initialize (mengisi element-element array untuk pertama kalinya)

                                     Alokasi Array


Array-name = new type [size|
  
berikut adalah contoh-contoh deklarasi array
Deklarasi  Array
                                                            Int data [ ]

Tipe  Data
 
                                                            Char name [ ];
                                                                 Double  skor []        


                                                                       String name [ ]

sedangkan untuk melakukan alokasi array formatnya adalah sebagai berikut 
Alokasi  Array

           Data=new int [10];
Nama=New char [5];
                   Skor =new double [20];
                        Nama=new string [10];


pada deklarasi tersebut ,ketika data pertama kali dibuat bernilai null karena tidak merrefer ke objek fisik manapun.
deklarasi dan alokasi array bisa dilakukan sekaligus dengan format sebagai berikut:
Alokasi Array
Type array-name =new type [size]
contoh deklarasi array berikut ini:
Contoh-contoh Deklarasi Array

                 Int data=new int [10];
 Char nama=New char [15];
               Double=new skor [10];
                String=new nama[100];


Jenis Array  
Array adalah struktur data yang statis, artinya jumlah elemen array harus diketahui 
sebelum program dieksekusi. Jumlah elemen  array tidak dapat diubah, ditambah atau 
dikurangi selama pelaksanaan program. Oleh karena itu, perlu diperhitungkan dengan cermat 
pemesanan tempat untuk suatu array. Array dapat dibedakan menjadi 3 jenis, yaitu : 
1. Array 1 (satu) dimensi, array yang terdiri dari satu baris dan banyak kolom atau satu 
kolom dan banyak baris. 
2. Array 2 (dua) dimensi, array yang terdiri dari banyak baris dan banyak kolom 
3. Array n dimensi, array yang tidak hanya terdiri dari baris dan kolom.

Array Satu Dimensi 
Array satu dimensi dapat kita gambarkan sebagai berikut : 
0  1  ….  n  Index Array
Elemen Array 
   Nilai Array 
Gambar 7.1 Array Satu Dimensi (satu baris dan banyak kolom) 
… 
Elemen
Array
Index  
Array 
  Nilai   
  Array 
Gambar 7.2 Array Satu Dimensi (satu kolom dan banyak baris) 
Elemen array diproses secara beruntun melalui indeks terurut, asalkan indeks tersebut 
sudah terdefinisikan. Elemen array tersebut diproses mulai dari elemen pertama sampai 
elemen terakhir atau sebaliknya secara berurutan. 
Cara pendeklarasian array 1 dimensi mirip dengan cara pendeklarasian variabel dengan 
tipe data tertentu. Hanya terdapat penambahan tanda kurung siku (“[“ dan “]”)  untuk 
menunjukan jumlah maksimum data yang dapat ditampung oleh variabel array tersebut. 
Jumlah data minimum yang dapat ditampung di dalam sebuah array adalah 1. Sintaks 
penulisannya : 
Pada C/C++, untuk mendeklarasikan variable array kita dapat menuliskannya 
sebagai berikut :
Tipe_Data Nama_Array[Jumlah_Elemen]; 
Contoh : int Nilai[25 ]; float Gaji[500]; 
Atau dapat juga kita deklarasikan disertai dengan inisialisasi nilai untuk array 
tersebut dan dituliskan sebagai berikut : 
int Nama_Array[Jumlah_Elemen] = {elemenke-0,…, elemen ke-N}; 
Contoh : int Nilai[5] = {0,1,2,3,4,5}; 
   Pada algoritma dan baha pemrograman yang umum, indeks array dimulai dari 
angka 1 (satu), sedangkan pada bahasa C/C++ index array dimulai dari angka 
0 (nol).

Membuat Array
array dibuat dengan menggunakan keyword new.contoh di bawah ini membuat sebuah array dengan tipe primitf chart:
S=new char [26];
indeks array dimuali denagan angka nol ,batasan legal untuk nilai indeks ini adalah dari nol hingga jumlah elemnen array- 1.apabilaprogram berusaha mengakses  array diluar batas yang legal,maka akn muncul runtime  exeception,untuk membuat  Array  dengan elemen obyek,gunakan cara penulisan berikut 
p= new point (10);
pernyataan  tersebut tidak membuat 10 obyek point .untuk membuat obyek point.
p[0] =new point (0,1);
p[1]= new point(1,2);
........

ARRAY MULTI DIMENSI
Java memungkinkan adanya array dengan dimensi lebih dari 2.bentuk umum dari inisilalisasi array multidimensi lebih dari 2 adalah:
Deklarasi Array Multidimensi
Type namaArray [][]-[] =new type [] []….[];

contoh deklarasi array integer 3 dimensi dengan ukuran 3x5x8;

Deklarasi Array Multidimensi
Int Array 3D [] [] [] =new int [3] [5] [8];

Array multidimensi dapat diinisalisasikan dengan cara berikut:

Inisialisasi Array Multidimensi
Type namaArray [] []…[]=(
{val,val,…va1},
{val,val,….va1},
.
.
.
{val,val,…val}
};

Array sebagai argument
array dapat dijadikan passing argument untuk suatu method seperti juga tipe data yang lain. ketika array dijadikan passing argumrnt semua tugas yang dibuat terhadap array di dalam method akan membuat alias untuk array tersebut.

Cara  Penendeklarasian Array  Array Multi  Multi  Dimensi ( Dimensi (BBerdimensi  BBerdimensi BBanyak) BBanyak)   
Cara pendeklarasian array multi dimensi mirip dengan cara array 1 dimensi. Hanya 
terdapat penambahan tanda kurung siku (“[“ dan “]”)  untuk menunjukan jumlah maksimum 
data yang dapat ditampung oleh variabel array tersebut.   
  
Pada C/C++, untuk mendeklarasikan variable array multi dimensi kita dapat 
menuliskannya sebagai berikut :
Tipe_Data Nama_Array[Jumlah_Elemen1] ]...[Jumlah_Elemen n];  emen n];  
Contoh : 
int Array[10][5]; //deklarasi array 2 dimensi 
double Jumlah[7][1][3]; //deklarasi array 3 dimensi
float Total[5][6][1][2]; //deklarasi array 4 dimensi, dst…
Cara PPengaksesan PPengaksesan Array  Array Array Multi  Dimensi Array Multi  Dimensi   
Untuk dapat memasukan suatu nilai atau melihat isi  dari suatu array kita harus 
menentukan posisi dimana nilai tersebut disimpan. Untuk mengakses elemen array dapat 
kita lakukan dengan perintah   
  
Pada C/C++, untuk mengakses elemen array dapat kita lakukan dengan perintah 
sebagai berikut :
Nama_Array[indeks_Elemen1] ]...[indeks indeks_Elemen n]; _Elemen n];   
Contoh : 
Ary[10]; //akses elemen array Ary pada indeks ke-10
Jumlah[7][1]; // akses elemen  array Jumlah pada indeks baris ke-7 dan indeks 
kolom ke-1 
Total[5][6][1]; // akses elemen  array Total pada indeks x ke-5 dan indeks y ke-6 
dan indeks z ke-1, dst…
Setelah posisi ini kita ketahui, kemudian kita bisa melakukan operasi pada array atau nilai 
dalam array tersebut. Operasi yang dapat dilakukan  pada sebuah array sangat beragam 
tergantung kebutuhan pengguna program tersebut.   
ARRAY Multidimensi
Dalam java ,dapat dibuat array dari array sehingga dinami array multidimensi .contoh berikut ini memperlihatkan cara memperlihatkan cara membuat array dua dimensi:
contoh berikut ini car memperlihatkan cara membuat array dua dimensi:
 int twoDim [] []=new int  [4] [];
twoDim [0]= new int [5];
twoDim [1]=new int [5];

Array dari Array yang bersifat non-rectanguler dapat dibuat seperti dalam contoh berikut:
twoDim [0]= new int [2];
twoDim [1]=new int [4];
twoDim [2]=new int [6];
twoDim[3]=new int;[8]
Untuk membuat array dari array yang rectanguler dengan cara mudah ,gunakan bentuk berikut ini:
int twoDim [] [] =new int [4] [5];


Contoh program : [1]
Program 08

package array;

public class MultiDimensi02
{
    public static void main(String[] args)
    {
        int[][] myInt;
        myInt = new int[3][]; // sudah ada 1 object array
        myInt[0] = new int[9]; //sudah ada 2 object array
        myInt[1] = new int[2]; //sudah ada 3 object array
        myInt[2] = new int[5]; //sudah ada 4 object array
       
        System.out.println("myInt.length = " + myInt.length);
        System.out.println("myInt[0].length = " + myInt[0].length);
        System.out.println("myInt[1].length = " + myInt[1].length);
        System.out.println("myInt[2].length = " + myInt[2].length);
    }
}

Program di atas akan menghasilkan :
myInt.length = 4
myInt[0].length = 9
myInt[1].length = 2
myInt[2].length = 5
Keterangan :
Program di atas akan menghasilkan 4 object array, dimana keseluruhan object tersebut dapat menampung 16 nilai int.

Program di atas dapat diilustrasikan sbb : [1]

http://catatan.desdrianton.net/scjp/content/ARRAY_files/image002.gif





http://catatan.desdrianton.net/scjp/content/ARRAY_files/image002.gif


3. INITIALISASI

3.1 Inisialisasi element dengan nilai default

  • Sebenarnya, ketika kita mengkonstruksi suatu array dengan operator new, semua element-element array itu diinisialisasi ke nilai default dari dari TipeArray-nya (kecuali anonymous array). [1&3]
Berikut ini adalah table nilai default saat konstruksi : [1&3]
Tipe Element
Initial value
byte
0
short
0
int
0
long
0L
char
’\u0000’
float
0.0f
double
0.0d
boolean
false
Object reference
null

Contoh : [1]
Program 09

package array;

class NilaiDefaultKonstruksi01
{
    public static void main(String[] args)
    {
        int[] i = new int[10];
        char[] c = new char[10];
        float[] f = new float[10];
        boolean[] b = new boolean[10];
        Object[] o = new Object[10];
       
        if(i[0] == 0)
            System.out.println("Nilai default int adalah 0");
        if(c[0] == '\u0000')
            System.out.println("Nilai default char adalah '\\u0000'");
        if(f[0] == 0.0f)
            System.out.println("Nilai default float adalah 0.0f");
        if(b[0] == false)
            System.out.println("Nilai default boolean adalah false");
        if(o[0] == null)
            System.out.println("Nilai default object reference " +
                    "adalah null");
       
    }
}

Program di atas akan menghasilkan :
Nilai default int adalah 0
Nilai default char adalah '\u0000'
Nilai default float adalah 0.0f
Nilai default boolean adalah false
Nilai default object reference adalah null



sumber: danangjunaedi.files.wordpress.
http://nice.or.id/qtcurriculum/hol/chapter3.pdf
buku pemograman widyatama.