C#/연습장

List<T> 연습

Game Client Lee Hwanguk 2023. 1. 10. 15:48

# //제너릭 List연습 ,stack,Queue,dictionaly
            //List인스턴스 생성
            //Add
            //Contains
            //단일 요소값 가져오기
            //Remove
            //Count
            //for
            //foreach

            //Qeue인스턴스생성
            //Add
            //단일요소 가져오기 peek Dequeue

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Study10
{
    internal class App
    {
        
        
        public App()
        {

            //제너릭 List연습 ,stack,Queue,dictionaly
            //List인스턴스 생성
            //Add
            //Contains
            //단일 요소값 가져오기
            //Remove
            //Count
            //for
            //foreach

            //Qeue인스턴스생성
            //Add
            //단일요소 가져오기 peekm Dequeue

            List<Weapon> weapons = new List<Weapon>(); //<Weapon> 타입의 리스트(객체)를 만들어서 List<Weapon> weapons에 할당 
            Weapon weapon0 = new Weapon("장검"); //Weapon클래스의 name 에 "장검"을 매개변수로 할당
            Console.WriteLine(weapon0.Name); //"장검" 들어갔는지 확인
            weapons.Add(weapon0); //List로 만들어진 weapons에 weapon0의 name매게변수 "장검"을 할당
            Console.WriteLine(weapons.Count); //weapons List에 몇개가 있는지 확인
            Console.WriteLine(weapons[0].Name); //뭐가 들어가있나 확인 , index를 이용해 단이 요소값 확인

            Weapon weapon1 = new Weapon("단검"); //"단검" 이라는 name을 가진 새로운 인스턴스 생성
            weapons.Add(weapon1); //weapons List에 추가
            Console.WriteLine(weapons.Count);//2개의 인스턴스가 잘 들어갔는지 확인

            Console.WriteLine(weapons[1].Name); //index를 확인, 단일 요소값 확인
            
            for(int i=0; i<weapons.Count; i++)
            {
                Console.WriteLine(weapons[i].Name); //for문을 돌아보며 들어있는 아이템들 확인
            }
            Console.WriteLine();

            foreach (Weapon weapon in weapons)
            {
                Console.WriteLine(weapon.Name);
            }
            Console.WriteLine();
            weapons.Remove(weapon1); //weapon1 단검 제거하기
            foreach (Weapon weapon in weapons)
            {
                Console.WriteLine(weapon.Name);
            }
            Console.WriteLine(); //잘 제거되있나 확인
            Console.WriteLine(weapons.Count); //List는 배열과 다르게 요소가 빠지면 그만큼 용량이 줄어든다 확인





        }
    }
}