C# Dersleri 37 - Convert Classı ve Tip Dönüşümleri

     C# dilinde tip dönüşümü(Type Conversion), bir data tipindeki verinin başka bir data tipine dönüştürülmesidir. Çoğunlukla Convert classını kullanarak yaparız bu dönüşümleri. Convert classını küçük büyük her türlü projede sıklıkla kullanırız. C# dilinde iki çeşit tip dönüşümü vardır.

     * Implicit Type Conversion : Data kaybı yaşanma riski olmayan dönüşümlerdir. Daha küçük data tiplerinden daha geniş data tiplerine dönüşümlerde C# tarafından kullanılır. Örneğin int tipindeki bir datanın long tipine çevrilmesi buna örnektir.
     * Explicit Type Conversion : Data kaybı yaşanması mümkün olan dönüşümlerdir. Örneğin long tipindeki bir datanın int tipine çevrilmesi gibi.

     Tipler arasındaki dönüşümleri Convert classı sayesinde yaparız. Peki buna neden ihtiyaç duyarız? Bir matematiksel işlemin sonucunu MessageBox'ta göstereceğiniz bir uygulama geliştirdiğimizi varsayalım. Matematiksel işlemin sonucundaki data da muhtemelen int ya da double gibi bir skaler tip olacaktır. Ancak MessageBox.Show() methodu string parametre kabul eder. O yüzden sonuçta elimizdeki skaler datayı string tipine çevirmemiz gerekir.     

private void btnClick_Click(object sender, EventArgs e)
{
    int a = 3;
    int b = 4;
    int c = a * b;

    MessageBox.Show(c.ToString());
}

     Convert Classı

     Convert classına ait belli başlı kullanabileceğimiz methodlar :

     * ToBoolean : Datayı bool(true / false) değere çevirir.
     * ToByte : Datayı Byte tipine çevirir.
     * ToChar : Unicode bir karakteri Char tipine çevirir.
     * ToDateTime : Datayı Datetime tipine çevirir.
     * ToDecimal : Datayı decimal tipine çevirir.
     * ToDouble : Datayı double tipine çevirir.
     * ToInt16 : Datayı 16 bitlik int tipine çevirir.
     * ToInt32 : Datayı 32 bitlik int tipine çevirir.
     * ToInt64 : Datayı 64 bitlik int tipine çevirir.
     * ToString : Datayı stringe çevirir.

     Kullanıcıdan Textbox aracılığıyla alınan iki parametrenin çarpımlarını MessageBox'ta gösteren bir uygulama yazmak istersek, öncelikle Textbox'tan gelen dataları int tipine çevirmemiz gerekir. Çünkü Textbox'a girilen inputlar, C# dilinde string tipindedir ancak çarpım işlemine alabilmemiz için int tipinde olması gerekir.     

private void btnClick_Click(object sender, EventArgs e)
{
    int a = Convert.ToInt32(txtIlkDeger.Text);
    int b = Convert.ToInt32(txtIkinciDeger.Text);

    int result = a * b;
    MessageBox.Show(result.ToString());
}

 

YORUMLAR
Email Adresi *
Görüntülenecek İsim *
Yorum *
Paylaş
  • f