예제 #1
0
        static void Main(string[] args)
        {
            MyDictionary <String, String> colleagues = new MyDictionary <string, string>();
            DictionaryResult dictionaryResult        = new DictionaryResult();

            dictionaryResult = colleagues.Add("Phyton", "Tony Stark");
            dictionaryResult = colleagues.Add("Java", "Bruce Banner");
            dictionaryResult = colleagues.Add("Javascript", "Steve Rogers");
            dictionaryResult = colleagues.Add("C#", "Natasha Romanova");
            dictionaryResult = colleagues.Add("Angular", "Scarlett Witch");

            //Eleman sayısını yazdırma
            Console.WriteLine("Count of MyDictionary example: {0}", colleagues.Length);

            // Key değerlerini yazdırma
            Console.WriteLine("KEYS:");
            string[] keys = colleagues.Keys;
            foreach (var key in keys)
            {
                Console.WriteLine(key);
            }

            // Value değerlerini yazdırma
            Console.WriteLine("\nVALUES:");
            string[] values = colleagues.Values;
            foreach (var value in values)
            {
                Console.WriteLine(value);
            }


            //Doğrudan atama ile ekleme
            colleagues["Ruby"] = "Hawkeye";


            //Bir key ile kaydedilmiş value değerini yazdırma
            Console.WriteLine("\nHawkeye's workplace: {0} -> ", colleagues["Ruby"]);

            Console.WriteLine("\n*** Hawkeye's change ***");
            //Güncelleme
            colleagues["Ruby"] = "Hawkeye";

            Console.WriteLine("COLLEAGUES: \n");
            foreach (var key in keys)
            {
                Console.WriteLine("{0} Colleague => {1} \n", key, colleagues[key]);
            }

            int count = colleagues.Length;

            Console.WriteLine("Total Colleague: " + count);

            colleagues.Remove("9-B");
            count = colleagues.Length;
            Console.WriteLine("Total Colleague: " + count);
        }
예제 #2
0
        public DictionaryResult Add(TKey key, TValue value)
        {
            //Geri dönüş değişkeni tanımlanıyor
            DictionaryResult dictionaryResult = new DictionaryResult();

            //Önce dictionary için iletilen key değerinin
            //daha önce kaydedilip kaydedilmediği kontrol ediliyor

            if (ContainsKey(key))
            {
                //İletilen key değeri listede varsa ekleme işlemi iptal ediliyor
                dictionaryResult.Status  = false;
                dictionaryResult.Message = "Gönderilen key değeri zaten kayıtlı. Tekrar aynı key değerini kullanamazsınız.";
                return(dictionaryResult);
            }

            // Uygulama bu satıra ulaşmışsa key değeri daha önce kayıt edilmemiş demektir
            // Bu durumda kayıt işlemine devam edilir
            // key kaydı
            TKey[] tempKeyArray = _keys;
            _keys = new TKey[_keys.Length + 1];
            for (int i = 0; i < tempKeyArray.Length; i++)
            {
                _keys[i] = tempKeyArray[i];
            }
            _keys[_keys.Length - 1] = key;

            //value kaydı
            TValue[] tempValueArray = _values;
            _values = new TValue[_values.Length + 1];
            for (int i = 0; i < tempValueArray.Length; i++)
            {
                _values[i] = tempValueArray[i];
            }
            _values[_values.Length - 1] = value;
            dictionaryResult.Status     = true;
            dictionaryResult.Data       = _keys.Length - 1; //Yeni kaydın index değeri
            dictionaryResult.Message    = "Yeni kayıt başarıyla eklendi";
            return(dictionaryResult);
        }