c#/복습

(재연습)컬렉션

yeeendy 2023. 1. 24. 22:45

<책 내용 연습>

 

ArrayList

using System;
using System.Collections;

namespace Study0124
{
    class Program
    {
        static void Main(string[] args)
        {
            ArrayList list = new ArrayList();
            for (int i = 0; i < 5; i++)
                list.Add(i);

            foreach (object obj in list)
                Console.Write($"{obj} ");   //0 1 2 3 4
            Console.WriteLine();

            list.RemoveAt(2);

            foreach (object obj in list)
                Console.Write($"{obj} ");   //0 1 3 4
            Console.WriteLine();

            list.Insert(2, 2);  //2자리에 2추가

            foreach (object obj in list)
                Console.Write($"{obj} ");   //0 1 2 3 4
            Console.WriteLine();

            list.Add("abc");
            list.Add("def");

            for (int i = 0; i < list.Count; i++)
                Console.Write($"{list[i]} ");    //0 1 2 3 4 abc def
            Console.WriteLine();
        }
    }
}

Queue

using System;
using System.Collections;

namespace Study0124
{
    class Program
    {
        static void Main(string[] args)
        {
            Queue que = new Queue();
            que.Enqueue(1);
            que.Enqueue(2);
            que.Enqueue(3);
            que.Enqueue(4);
            que.Enqueue(5);

            while (que.Count > 0)
                Console.WriteLine(que.Dequeue()); //1/2/3/4/5   //Queue에서 데이터 꺼낼 땐 Dequeue() 메소드를 이용
        }
    }
}

Stack

using System;
using System.Collections;

namespace Study0124
{
    class Program
    {
        static void Main(string[] args)
        {
            Stack stack = new Stack();
            stack.Push(1);
            stack.Push(2);
            stack.Push(3);
            stack.Push(4);
            stack.Push(5);

            while (stack.Count > 0)
                Console.WriteLine(stack.Pop());     //5/4/3/2/1     
        }
    }
}

Hashtable

using System;
using System.Collections;

namespace Study0124
{
    class Program
    {
        static void Main(string[] args)
        {
            Hashtable ht = new Hashtable();
            ht["하나"] = "one";
            ht["둘"] = "two";
            ht["셋"] = "three";
            ht["넷"] = "four";
            ht["다섯"] = "five";

            Console.WriteLine(ht["하나"]);
            Console.WriteLine(ht["둘"]);
            Console.WriteLine(ht["셋"]);
            Console.WriteLine(ht["넷"]);
            Console.WriteLine(ht["다섯"]); //one/two/three/four/five
        }
    }
}

컬렉션을 초기화 하는 방법

using System;
using System.Collections;

namespace Study0124
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = { 123, 456, 789 };

            ArrayList list = new ArrayList(arr);
            foreach (object item in list)
                Console.WriteLine($"ArrayList : {item}");
            Console.WriteLine();

            Stack stack = new Stack(arr);
            foreach (object item in stack)
                Console.WriteLine($"Stack : {item}");
            Console.WriteLine();

            Queue queue = new Queue(arr);
            foreach (object item in queue)
                Console.WriteLine($"Queue : {item}");
            Console.WriteLine();

            ArrayList list2 = new ArrayList() { 11, 22, 33 };
            foreach (object item in list2)
                Console.WriteLine($"ArrayList2 : {item}");
            Console.WriteLine();

        }
    }
}