public void SaveContactsToFile() { try { StreamWriter sw = new StreamWriter("C:/Users/Avaus/Desktop/contacts/contactFile.txt"); MyLinkedList <Contact> contList = book.getContactList(); IMyIterator <Contact> ite = contList.Iterator(); while (ite.HasNext()) { String line = ""; Contact cont = ite.Next(); if (cont.GetContNumber() is HomeNumber) { line = cont.GetFirstName().ToString() + "," + cont.GetLastName().ToString() + ",home," + cont.GetContNumber().ToString(); } if (cont.GetContNumber() is MobileNumber) { line = cont.GetFirstName().ToString() + "," + cont.GetLastName().ToString() + ",mobile," + cont.GetContNumber().ToString(); } sw.WriteLine(line); } sw.Close(); } catch (Exception e) { Console.WriteLine("Exception: " + e.Message); } finally { Console.WriteLine("Saving contacts!"); } }
public void PrintBook() { IMyIterator <Contact> ite = contactList.Iterator(); while (ite.HasNext()) { Console.WriteLine(ite.Next().ToString()); } }
private void PrintMenu(IMyIterator iterator) { while (iterator.HasNext()) { var menuItem = iterator.Next() as MenuItem; Console.Write($"{menuItem?.Name}, "); Console.Write($"{menuItem?.Price} -- "); Console.WriteLine($"{menuItem?.Description}"); } }
static void Main(string[] args) { #region First improvization (comment/uncomment) //Console.WriteLine("you have 5 tries"); //Dice dice = new Dice(); //dice.ThrowDices(); //dice.ThrowDices(); //dice.ThrowDices(); //dice.ThrowDices(); //dice.ThrowDices(); //foreach (var d in dice) //{ // Console.WriteLine(d); //} #endregion #region Second improvization (comment/uncomment) int numberOfThrows = 5; IAggregate clientCollectionObject = new Aggregate(numberOfThrows); IAggregate clientCollectionObjectOtherDice = new Aggregate(numberOfThrows); //IMyIterator clientIteratorDice1 = new MyIterator(clientCollectionObject, random); //IMyIterator clientIteratorDice2 = new MyIterator(clientCollectionObjectOtherDice, random); Random rnd = new Random(); IMyIterator clientIteratorDice1 = clientCollectionObject.GetIterator(rnd); IMyIterator clientIteratorDice2 = clientCollectionObjectOtherDice.GetIterator(rnd); int broj = 0; for (; clientIteratorDice1.IsDone == false;) { broj = clientIteratorDice1.NextItem; Console.WriteLine(broj); } Console.WriteLine(); for (broj = 0; clientIteratorDice2.IsDone == false;) { broj = clientIteratorDice2.NextItem; Console.WriteLine(broj); } #endregion Console.ReadKey(); }
static void Main(string[] args) { //客户端无需关心容器中的数据结构和实现方式,容器中不用暴露细节 //元素的遍历与实现分离 ConcreateAggragate aggregate = new ConcreateAggragate(); aggregate.AddItem("Item1"); aggregate.AddItem("Item2"); aggregate.AddItem("Item3"); IMyIterator myIterator = aggregate.GetIterator(); while (myIterator.HasNext()) { Console.WriteLine(myIterator.Next()); } Console.ReadKey(); }
public void RemoveCont() { Console.Write("Contact to remove information!\nFirst name: "); string firstName = Console.ReadLine(); Console.Write("Last name: "); string lastName = Console.ReadLine(); Contact toRemove = new Contact(firstName.ToLower().Trim(' '), lastName.ToLower().Trim(' ')); IMyIterator <Contact> ite = contactList.Iterator(); while (ite.HasNext()) { Contact temp = ite.Next(); if (temp.Equals(toRemove)) { ite.Remove(); } } Console.WriteLine(); }
static void Main(string[] args) { MyList data = new MyList(1, 2, 3, 4, 5, 6, 7, 8, 9); IMyIterator iterator = data.GetIterator(); while (iterator.HasNext()) { int item = iterator.GetNext(); Console.WriteLine(item); } Console.WriteLine("---"); foreach (int item in data) { Console.WriteLine(item); } Console.WriteLine("---"); List <int> list = new List <int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; // foreach IEnumerator <int> enumerator = list.GetEnumerator(); while (enumerator.MoveNext()) { int item = enumerator.Current; Console.WriteLine(item); } Console.ReadKey(); }