Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- namespace LinkedList
- {
- class Cliente
- {
- public string Cognome { get; set; }
- public int Eta { get; set; }
- public Cliente(string cognome, int eta) { Cognome = cognome; Eta = eta; }
- public override bool Equals(Object obj)
- {
- Cliente c = obj as Cliente;
- return c.Cognome == this.Cognome;
- }
- }
- class Program
- {
- static void StampaElenco(LinkedList<Cliente> elenco)
- {
- foreach (Cliente c in elenco)
- Console.WriteLine($"{c.Cognome} - {c.Eta}");
- Console.WriteLine(new string('-', 40));
- }
- static void Main(string[] args)
- {
- LinkedList<Cliente> elenco = new LinkedList<Cliente>();
- elenco.AddFirst(new Cliente("Uno", 15));
- elenco.AddFirst(new Cliente("Due", 30));
- elenco.AddFirst(new Cliente("Tre", 45));
- StampaElenco(elenco); //LIFO
- elenco.Clear();
- elenco.AddLast(new Cliente("Uno", 15));
- elenco.AddLast(new Cliente("Due", 30));
- elenco.AddLast(new Cliente("Tre", 45));
- StampaElenco(elenco); //FIFO
- Console.WriteLine($"{elenco.First.Value.Cognome} - {elenco.Last.Value.Cognome}");
- elenco.AddAfter(elenco.First.Next, new Cliente("Quattro", 44));
- StampaElenco(elenco);
- LinkedListNode<Cliente> cercato = elenco.Find(new Cliente("Due", 30));
- Console.WriteLine(cercato.Next.Value.Cognome);
- cercato.Next.Value.Cognome = "XXX";
- Console.WriteLine(elenco.Last.Previous.Value.Cognome);
- elenco.Remove(cercato);
- StampaElenco(elenco);
- //visita di ogni nodo della linkedlist con un ciclo tradizionale
- LinkedListNode<Cliente> temp = elenco.First;
- while (temp != null)
- {
- Console.WriteLine(temp.Value.Cognome);
- temp = temp.Next;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement