コード例 #1
0
        public object Clone()
        {
            People clonePeople = new People();
            Person currentPerson, clonePerson;

            foreach (DictionaryEntry p in Dictionary)
            {
                currentPerson    = p.Value as Person;
                clonePerson      = new Person();
                clonePerson.Name = currentPerson.Name;
                clonePerson.Age  = currentPerson.Age;
                clonePeople.Add(clonePerson);//深度复刻
            }
            return(clonePeople);
        }
コード例 #2
0
        public Person[] GetOldest()
        {
            Person oldestPerson = null;
            Person currentPerson;
            People oldestPeople = new People();

            foreach (DictionaryEntry p in Dictionary)
            {
                currentPerson = p.Value as Person;
                if (oldestPerson == null)
                {
                    oldestPerson = currentPerson;
                }
                else
                {
                    if (currentPerson > oldestPerson)
                    {
                        oldestPerson = currentPerson;
                    }
                }
            }
            foreach (DictionaryEntry p in Dictionary)
            {
                currentPerson = p.Value as Person;
                if (oldestPerson == currentPerson)
                {
                    oldestPeople.Add(currentPerson);
                }
            }
            Person[] oldestpeopleArray = new Person[oldestPeople.Count];
            int      copyIndex         = 0;

            foreach (DictionaryEntry p in oldestPeople)
            {
                oldestpeopleArray[copyIndex] = p.Value as Person;
                copyIndex++;
            }
            return(oldestpeopleArray);
        }