Not: (” Tırnak) işaretlerini kodlamada yeniden yazmanız gerekmektedir.
Bu dersimizde “ActionScript 3 ile Diziler” ‘e değineceğiz.
Diziler içerisinde bir ya da daha fazla eleman içerebilen değişkenlerdir. Bu değişkenleri numarasına göre yeniden çağırabilir ve kullanabiliriz. Önemli bir husus ta; dizi elemanları sırasıyla 0,1,2… şeklinde numaralanırlar.
// Kod yazımı buradan itibaren başlamıştır
/* Diziyi de diğer değişkenler gibi oluşturalım. Bu esnada dizinin ismini, aslen dizi olduğunu, ve değerlerini girelim. */
var diziDeneme:Array = new Array();
diziDeneme[0] = “Mehmet”;
diziDeneme[1] = “Burak”;
trace(diziDeneme[1]); // Burak
// DİZİNİN ELEMAN SAYISINI TESPİT ETMEK
trace(”Bu dizinin eleman sayısı: ” + diziDeneme.length); // Bu dizinin eleman sayısı: 2
// DİZİYE BİR ELEMAN EKLEMEK (SONA)
diziDeneme.push(”Hakan”);
trace(diziDeneme); //Mehmet,Burak,Hakan
// DİZİYE BİR ELEMAN EKLEMEK (BAŞA)
diziDeneme.unshift(”Özcan”); //İlk sıraya Özcan’ı ekler
trace(diziDeneme); //Özcan,Mehmet,Burak,Hakan
// DİZİ İÇERİSİNDE DÖNGÜ ÇALIŞTIRARAK ÜYELİK SORGUSU YAPMAK
var diziDeneme2:Array = [”Hasan”,”Burak”,”Mehmet”];
trace(diziDeneme2);
//Hasan,Burak,Mehmet
/* Normal bir for döngüsü kuruyoruz. i adında sayısal değişken oluşturuyoruz. i’yi sıfırlıyoruz. i ‘yi dizi içerisindeki eleman sayısı kadar olana dek bir artır komutunu veriyoruz. */
for (var i:Number=0; i < diziDeneme2.length; i++) {
/*Dönme esnasında i sayısı sürekli artıyor. diziDeneme[i sayısının o anki değeri] “Mehmet” diye bir elemana rastlarsa “Mevcut” çıktısını vermesini istiyoruz. */
if (diziDeneme == “Mehmet”) {
trace(”Mevcut”);
}
}
// STRİNG BİR DEĞİŞKEN VEYA YAZI KUTUSUNDAKİ YAZINSAL VERİLERİ PARÇALAMAK
/* Herhangi bir yazıdan belirlediğimiz sembol yardımıyla, bu sembolün bulunduğu her noktayı yeniden bu sembol karşımıza çıkana değin parçalara ayırabiliriz. */
/* Bu yeni verileri yeni bir string ya da bir diziye aktarabiliriz. */
var makale:String = new String(”Merhaba!.. Bu örnek bir makale yazısıdır”)
var txtDizi:Array;
txtDizi = makale.split(” “);
// Ben boşluklardan ayırma yaptım. İsterseniz (,) , (.) gibi sembolleri de kullanabilirsiniz
trace(txtDizi[0]);
trace(txtDizi[1]);
trace(txtDizi[2]);
trace(txtDizi[3]);
// Merhaba!..
// Bu
// örnek
// bir
// VERİ SAYISI ÖNCEDEN TANIMLI DİZİ
var diziSayisi2:Array = new Array(5);
trace(diziSayisi2.length); //Dizide şimdiden oluşan eleman sayısını gösterir. “5″
// Dizinin sadece belirlediğimiz elemanlarını atayalım.
diziSayisi2[0] = “bir”;
diziSayisi2[2] = “Üç”;
diziSayisi2[5] = “Altı”;trace(diziSayisi2);// Dizideki 5 elemandan 0,2,ve 5. elemanın ne olacağını belirledik. Bunları gösterir
// DİZİDEKİ ELEMANLAR ARASINA DEĞER ALMAK
// Virgülü beğenmiyormusunuz? O halde boşluk ya da ”ve” ifadesini ‘de kullanmayı öğrenelim..
var diziDeneme3:Array = new Array(”bir”, “iki”, “üç”);
//Yeni değişken tanımlayalım. İçeriği diziDeneme3′ün elemanları ve aralarına eklenmiş “ve” lerden oluşsun
var diziDeneme3yazi:String = diziDeneme3.join(” ve “);
trace(diziDeneme3yazi); // bir ve iki ve üç
// DİZİ İÇERİSİNDEKİ ELAMANLARIN SORGULAMASI
var diziDeneme4:Array = new Array(123,45,6789,123,984,323,123,32);
var index:int = diziDeneme4.indexOf(123);
trace(”Evet ” + index + “‘ıncı eleman 123″); // Evet 0′ıncı eleman 123
var indexSon:int = diziDeneme4.lastIndexOf(123);
trace(”Evet ” + indexSon + “‘ıncı eleman 123″);// Evet 6′ıncı eleman 123
/* Bu dizide 123 şeklinde bir eleman varsa bu en az sıfırdan büyük bir değer demektir. Yani birinci eleman 0 değerini döndürür. 4′üncü eleman 3 değerini döndürür. O zaman 123 şeklindeki bir elemanın mevcudiyeti en az 0 değerini döndürür. */
// Biz de diziye bunu soralım
if (diziDeneme4.lastIndexOf(123) > -1) {
trace(”Bu dizide böyle bir eleman mevcut”);
}
// DİZİDEN BİR ELEMAN KESMEK (SONDAN)
// Dizideki son elemanı kesebilir ve dilerseniz bununla yeni bir string değişken oluşturabilirsiniz.
var diziDeneme5:Array = new Array(”bir”, “iki”, “üç”);
trace(diziDeneme5);
var diziDeneme5SonEleman:String = diziDeneme5.pop();
trace(diziDeneme5);
trace(diziDeneme5SonEleman); // üç
// DİZİDEN BİR ELEMAN KESMEK (BAŞTAN)
var diziDeneme6:Array = new Array(”bir” , “iki” , “üç”);
var diziDeneme6IlkEleman:String = diziDeneme6.shift();
trace(diziDeneme6);
trace(diziDeneme6IlkEleman);
// DİZİ İÇİNDEKİ ELEMANLARI TERSİNE ÇEVİRMEK
var diziDeneme7:Array = new Array(”bir”, “iki”, “üç” , “dört”);
trace(diziDeneme7);
diziDeneme7.reverse();
trace(diziDeneme7); // dört,üç,iki,bir
// DİZİDEN BELİRLENEN ARALIKTAKİ ELEMANLARI KOPYALAMAK
var diziDeneme8:Array = new Array(”bir”, “iki”, “üç”, “dört”, “beş”, “altı”);
var diziDeneme8Aralik:Array = diziDeneme8.slice(0,4);
trace(diziDeneme8);
trace(diziDeneme8Aralik);
// slice(2); ikiden sonrasını, slice(-2); sondan ikinciden itibaren kopyalar
// DİZİDEN ELEMAN SİLMEK
/*
Dizi içinde 5 eleman olduğunu varsayarsak. üçüncü,dördüncü ve beşinci elemanları silmek için
Birinci elemanın 0(sıfır) no ‘ya denk geldiğini hesaba katarak;
dizi.splice(2); // yani 0,1.. den sonraki tüm elemanları sil.
Tersi için (sondan itibaren) dizi.splice(-2);
dizi eleman sayısını bozmadan sadece içeriği silmek için
delete dizi[0]; (Evet arada nokta vs yok)
*/
// DİZİ İÇİNDEKİ ELEMANLARI ALFABEYE GÖRE SIRALAMAK
var diziDeneme9:Array = new Array(”ayakkabı”,”disket”,”cevşen”,”bardak”);
diziDeneme9.sort(); trace(diziDeneme9); // ayakkabı,bardak,cevşen,disket// DİZİ İÇİNDEKİ ELEMANLARI KÜÇÜKTEN BÜYÜĞE SIRALAMAK
var diziDeneme10:Array = new Array(5,4,3,2,1,0);
trace(”Orjinali ” + diziDeneme10);
diziDeneme10.sort(Array.NUMERIC);
trace(”Sıralı hali: ” + diziDeneme10); //Sıralı hali: 0,1,2,3,4,5
// DİZİ İÇİNDEKİ VERİLERİ STRİNG BİR DEĞİŞKENE ÇEVİRMEK
var diziDeneme11:Array = new Array(”bir”,”iki”,”üç”);
var diziDeneme11String:String = diziDeneme11.toString();
trace(diziDeneme11String);