ActionScript 3.0: Veri Tiplerini Birbirine Dönüştürme
Muttalip TULGAR Tarih: 17/07/2008 Yorum: 1 adet
Okunma : 412 Tutanlar: Bu yazıyı 2 kişi tuttu.
ActionScript programlamada veri tipleri arasında dönüşüm yapılabilmekle beraber bu dönüşüm işlemleri belirli kurallarla sınırlandırılmıştır.
Temel olarak gizli (implicit) ve açık (explicit) veri tipi dönüşümleri vardır. Bunun için aşağıdaki örneği inceleyelim.
var a:int=3;
var b:Number=2;
b=a;
trace(b);
//3
Örnekte int veri tipi, Number veri tipine gizli bir veri tipi dönüşümü ile çevrilmiştir. Gizli veri tipi dönüşümü çalışma anında gerçekleşir.
var a:String="6";
var b:int=int(a);
trace(3+b);
//9
Burada ise; "a" string değeri var b:int=int(a) ifadesi ile int sayı değerine dönüştürülüyor (explicit) ve trace(3+b) ile de dönüştürülen sayısal değer toplama işlemine tabii tutuluyor.
1) int, uint ve Number Veri Tipine Dönüştürme:
a) Boolean Veri Tipini int, uint ve Number Veri Tipine Çevirme:
var a:Boolean=true;
var b:uint=uint(a);
trace(b);
//1
var a:Boolean=false;
var b:int=int(a);
trace(b);
//0
var a:Boolean=true;
var b:Number=Number(a);
trace(b);
//1
Eğer bir Boolean veri değeri sayıya çevrilecekse, "true" 1 değerine,"false" 0 değerine çevrilir.
b) String Veri Tipini int, uint ve Number Veri Tipine Çevirme:
trace(uint ("7")); //7;
trace(uint ("-7")); //4294967291;
trace(uint ("2.8")); //2;
trace(int ("2.8")); //2;
trace(Number ("2.8")); //2.8;
trace(Number ("0x2B")); //43;
String ifadelerin sayısal verilere çevrilebilmesi için, string ifade içinde sadece rakamsal ifadelerin bulunması gerekmektedir. Ancak ("0×2B") gibi hexadecimal ifadeleri bunun dışında tutmak gerekir.
String ifadenin başında ve sonunda bulunan boşluklar dikkate alınmadan dönüştürme işlemi yapılır. Ancak ifadenin arasında boşluklar olursa sayısal ifadeye dönüştürme aşamasında 0 değeri sonuç olarak alınır.
trace(int (" 2 ")); //2;
trace(int (" 2 7")); //0;
Rakamsal ifadeler içermeyen string değerler, int ve uint gibi sayısal verilere çevrilirken 0 sonucu alınır.
trace(int (" Ali5")); //0;
trace(uint (" Ali")); //0;
trace(uint (" 11 21")); //0;
Rakamsal ifadeler içermeyen string değerler, Number gibi sayısal verilere çevrilirken NaN sonucu alınır.
trace(Number (" Ali")); //NaN;
trace(Number (" Ali5")); //NaN;
trace(Number (" 11 21")); //NaN;
2) Boolean Veri Tipine Dönüştürme:
a) int, uint ve Number Veri Tipini Boolean Veri Tipine Çevirme:
Herhangi bir int, uint ve Number gibi sayısal veriyi Boolean veri tipine çevirirken, 0 değeri, "false" olarak çevrilir, diğer bütün sayısal değerler "true" olarak çevrilir.
trace(Boolean (0)); //false;
trace(Boolean (4)); //true;
trace(Boolean (4.5)); //true;
trace(Boolean (-27)); //true;
b) String Veri Tipini Boolean Veri Tipine Çevirme:
String ifade "null" veya "" ise Boolean veri tipine çevrilirken sonuç "false" olarak gerçekleşir. Ancak String ifade " " içinde boşluk olması durumunda ise Boolean değeri "true" olur.
var deger:String;
trace (Boolean(deger)); //false
var deger2:String="";
trace (Boolean(deger2)); //false
var deger3:String=" ";
trace (Boolean(deger3)); //true
c) Object Veri Tipini Boolean Veri Tipine Çevirme:
Oluşturulan geçersiz (null) bir Object örneği, Boolean veri tipine çevrilirken sonuç "false" olurken, geçerli bir Object, Boolean veri tipine çevrilirken sonuç "true" olur.
var deger:Object;
trace (Boolean(deger)); //false
var deger2= new Object;
trace (Boolean(deger2)); //true
3) String Veri Tipine Dönüştürme:
a) Array Veri Tipini String Veri Tipine Çevirme:
Array dizisinin içindeki değerler, virgülle ayrılmış olarak String ifadeye çevrilir.
var dizi:Array=["Pazartesi", "Salı", "Çarşamba"]; trace (String(dizi)); //Pazartesi, Salı, Çarşamba
b) Boolean Veri Tipini String Veri Tipine Çevirme:
Boolean’ın "true" değeri için String ifade true olurken, Boolean’ın "false" değeri için ise; String ifade false olur.
var karsilastir:Boolean=true;
trace(String(karsilastir));
//true
var karsilastir2:Boolean=false;
trace(String(karsilastir2));
//false
c) int, uint ve Number Veri Tipini String Veri Tipine Çevirme:
int, uint ve Number veri tipinin aldığı sayısal değerler String ifadelere dönüştürülürken, sayısal değeri olmayan String karakterlere çevrilir.
var a:Number=4;
var b:int=7;
trace (String(a)); //"4"
trace (String(b)); //"7"
d) Date Veri Tipini String Veri Tipine Çevirme:
Date veri tipindeki değer String ifadeye dönüştürülür.
var tarih:Date=new Date(2007,11,6);
trace(String(tarih));
//Thu Dec 6 00:00:00 GMT+0200 2007
e) Object Veri Tipini StringVeri Tipine Çevirme:
Oluşturulan geçersiz (null) bir Object örneği, String veri tipine çevrilirken sonuç "null" olurken, geçerli bir Object, String veri tipine çevrilirken sonuç "[object Object]" olur.
var deger:Object;
trace (String(deger));
//null;
var deger2= new Object;
trace (String(deger2));
//[object Object]
Makale
Ders
MMIstanbul Adobe UG
ColdFusion, Flex, AIR, Flash, PDF, Dreamweaver, Fireworks, Photoshop, Illustrator, iNdesign, Premiere, Soundbooth, Lightroom, InCopy, JRun, LiveCycle, Acrobat, AfterEffects, Resmi Adobe Kullanıcı Grubu.
Etkinlikler
Fuar
CeBIT 2008 Bilişim Eurasia 7 - 12 Ekim 2008' de
CeBIT 2008 Bilişim Eurasia 7 - 12 Ekim 2008' de
CeBIT Bilişim Eurasia bu yıl 7 – 12 Ekim tarihlerinde düzenleniyor
Adını dünyanın en büyük on fuarı arasına yazdırarak, İstanbul’u Avrasy...
Kategori: Fuar
Kimler Burada? 
Son 1 dakika içinde MMIstanbul' da 202 (1 kayıtlı, 201 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:
MMIstanbul Blog'undan
Neler Yapılabilir?
Yeni bir portal, 30 civarında online / offline etkinlik, seminer vb rağmen MMIstanbul sanıyoruz ki halen hakettiği ilgiyi göremedi. " ...
500 Hatası Hakkında!
Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)
Ne Nedir Kampanyası Başlıyor!
Çok Merak Edenler için; MMIstanbul Geliştirme Ekibi ve Çalışma Ortamımız





Yararlı bir konu gayet açıklayıcı olarak işlenmiş. güzel bir ders olmuş hocam.. Teşekkürler derslerinizi takip ediyorum. devamını diliyorum..