Mengurutkan nilai rapor atau mencari posisi suatu harga adalah pekerjaan yang muncul berulang kali. Menulis loop untuk setiap kebutuhan tersebut memakan waktu dan membuka peluang kesalahan. Kelas Array di namespace System menyediakan method-method statik yang siap dipakai pada array tipe mana pun.

Sort, Reverse, dan IndexOf #

Array.Sort mengurutkan elemen menaik secara langsung pada array yang diberikan, Array.IndexOf mencari posisi nilai tertentu, dan Array.Reverse membalik urutan elemen:

csharp
int[] nilai = { 78, 92, 65, 88, 71 };

Array.Sort(nilai);
Console.WriteLine(string.Join(" ", nilai));

int posisi = Array.IndexOf(nilai, 88);
Console.WriteLine(posisi);

Array.Reverse(nilai);
Console.WriteLine(string.Join(" ", nilai));

string[] nama = { "Dewi", "Agus", "Budi", "Rina" };
Array.Sort(nama);
Console.WriteLine(string.Join(" ", nama));

Output yang Dihasilkan:

text
65 71 78 88 92
3
92 88 78 71 65
Agus Budi Dewi Rina

Mari kita telaah baris demi baris:

  1. Baris 3 (Array.Sort(nilai)): Method mengurutkan array pada tempatnya (in place), bukan mengembalikan array baru; kelima nilai kini menaik dari 65 sampai 92.
  2. Baris 6 (Array.IndexOf(nilai, 88)): Method mengembalikan indeks pertama yang memuat 88, yaitu 3 setelah pengurutan.
  3. Baris 9 (Array.Reverse(nilai)): Urutan elemen dibalik menjadi menurun.
  4. Baris 12-13: Array.Sort juga bekerja pada array string; pengurutan mengikuti urutan alfabet, sehingga Agus tampil sebelum Rina.

Fill dan Clear #

Array.Fill mengisi seluruh elemen dengan satu nilai, sedangkan Array.Clear mengembalikan elemen ke nilai default tipenya:

csharp
int[] diisi = new int[4];
Array.Fill(diisi, 7);
Console.WriteLine(string.Join(" ", diisi));

Array.Clear(nilai, 0, nilai.Length);
Console.WriteLine(string.Join(" ", nilai));
Console.WriteLine(nilai[0]);

Output yang Dihasilkan:

text
7 7 7 7
0 0 0 0 0
0

Array.Fill(diisi, 7) menuliskan 7 pada keempat elemen array kosong. Array.Clear(nilai, 0, nilai.Length) bekerja mulai indeks 0 sebanyak nilai.Length elemen, dan seluruh elemen int kembali menjadi 0. Ukuran array tidak berubah; yang berubah hanya isi selnya.

Ringkasan Method Kelas Array #

MethodTugas
Array.SortMengurutkan elemen menaik pada tempatnya
Array.ReverseMembalik urutan elemen
Array.IndexOfMencari indeks nilai; mengembalikan -1 bila tidak ditemukan
Array.FillMengisi elemen dengan satu nilai
Array.ClearMengembalikan elemen ke nilai default
Array.BinarySearchMencari pada array yang sudah terurut
Array.Exists, Array.FindMencari berdasarkan kondisi (predicate)