Program yazarken yaptığımız hatalardan bir taneside -önceki veri türlerine uygun olmayan değişken tanımlamaydı- tür dönüşümleriyle ilgilidir. Bu yazımle birlikte C#’ta bulunan bir kaç tane tür dönüşüm yollarını öğreneceğinize inanıyorum. Hata olasılığınız en aza indirgemiş olacaksınız.
Küçükten Büyüğe Tür Dönüşümleri: Veri türlerinin hangi boyutlarda -hangilerinin büyük hangilerinin küçük- olduğunu daha önceki yazıda görmüştük.
byte a1=20; int b1; b1=a1;
float f=15f; double d; d=f
char c=’k’ ; decimal n; n=c;
Türü | Dönüşebilecekleri |
sbyte | short, int, float, long, double, decimal |
byte | short, ushort, int, uint, long, ulong, float, double, decimal |
short | int, long, float, double, decimal |
ushort | int, uint, long, ulong, float, double, decimal |
int | long, float, double, decimal |
uint | long, ulong, float, double, decimal |
long,ulong | float, double, decimal |
char | ushort , int, uint, long, ulong, float, double, decimal |
float | double |
bool, double ve decimal türünden herhangi bir türe, herhangi bir türden char türüne, float ve decimal türünden herhangi bir türe (float türünden double türüne dönüşüm hariç)
Büyükten Küçüğe Tür Dönüşümleri: Büyük türlerin küçük türlere otomatik dönüştürülmesi C#’ta yasaklanmıştır. Bu tür dönüşümler oparatörler ile mümkün olacak onuda az sonra göreceğiz.
ToString() Metodu: Bu metoda başlamadan önce şunu belirtmek isterim, C# dilinde herşeyin bir nesne olduğudur. Nesne olmayan hiçbir şey yoktur. Object sınıfına ait olan ToString() metodu bütün temel veri türlerinde kullanılabilir.
textbox1.text=200.ToString();
int a=1989.ToString();
int b=2010; string b1=b.ToString();
System.Convert Sınıfı ile Tür Dönüşümü: .Net kütüphanesinde yer alan bu özel sınıf dönüştürme işlemi yapar. Boolean türüne dönüşüm yapılmaz. Dikkat edilmesi gerekiyor.
textbox1.text=Convert.ToString(200);
Metot | Açıklama |
Convert.ToBoolean(string str) | str nesnesini bool türüne çevirir |
Convert.ToByte(string str) | str nesnesini byte türüne çevirir |
Convert.ToSbyte(string str) | str nesnesini Signed Byte türüne çevirir |
Convert.ToInt16(string str) | str nesnesini short türüne çevirir |
Convert.ToUInt16(string str) | str nesnesini ushort türüne çevirir |
Convert.ToInt32(string str) | str nesnesini int türüne çevirir |
Convert.ToUInt32(string str) | str nesnesini uint türüne çevirir |
Convert.ToInt64(string str) | str nesnesini long türüne çevirir |
Convert.ToUInt64(string str) | str nesnesini ulong türüne çevirir |
Convert.ToSingle(string str) | str nesnesini float türüne çevirir |
Convert.ToDouble(string str) | str nesnesini double türüne çevirir |
Convert.ToDecimal(string str) | str nesnesini decimal türüne çevirir |
Convert.ToChar(string str) | str nesnesini char türüne çevirir |
Örnek yaptım bir kaç tane ama şu an için ekleyemiyorum. En kısa zamanda ekleyeceğim.
#1 by ramazan on August 9, 2012 - 4:45 pm
teşekkürler7
#2 by Mahmut Can Sözeri on August 9, 2012 - 10:54 pm
Faydalı olduysa sevindim.