Clear        


                
                    using System.Globalization;

namespace _20_DictionaryCollectionType
{
    public class Ulke
    {
        #region Properties
        public string Adi { get; set; }

        /// <summary>
        /// Kişi sayısı.
        /// </summary>
        public int Nufusu { get; set; }

        /// <summary>
        /// Kilometrekare.
        /// </summary>
        public double Yuzolcumu { get; set; }
        #endregion



        #region Constructors
        public Ulke() // default (parametresiz) constructor
        {

        }

        public Ulke(string adi, int nufusu, double yuzolcumu) // parametreli constructor
        {
            Adi = adi;
            Nufusu = nufusu;
            Yuzolcumu = yuzolcumu;
        }
        #endregion



        #region Behaviors (Object Sınıfındaki ToString Methodunun Ülke Bilgilerini String Olarak Dönmek İçin Ezilmesi)
        public override string ToString()
        {
            // istenirse CultureInfo objesi bir kere new'lenip aşağıda gereken yerlerde kullanılabilir
            CultureInfo cultureInfo = new CultureInfo("tr-TR"); // Türkiye kültür (bölge) ayarı

            string ulke = "Ülke Bilgisi:\n";
            ulke += "Adı: " + Adi + "\n";

            ulke += "Nüfusu: " + string.Format(cultureInfo, "{0:N0}", Nufusu) + " kişi\n";
            // string sınıfının Format methodu üzerinden sırasıyla kültür (bölge) ayarı, virgülle birlikte toplam haneleri sağa hizalanmamış (padding left) ve
            // ondalık hanesi olmayan sayı formatı ({0:N0}) ile sayı (Nufusu) parametreleri kullanılarak formatlama yapılabilir

            ulke += "Yüzölçümü: " + Yuzolcumu.ToString("N1", cultureInfo) + " kilometrekare";
            // herhangi bir sayısal tipteki değişken, alan, özellik veya method üzerinden ki burada Yuzolcumu özelliği, ToString methodu üzerinden sırasıyla
            // tek ondalık haneli sayı formatı (N1) ile kültür (bölge) ayarı kullanılarak formatlama yapılabilir

            return ulke;
        }
        #endregion
    }
}