본문 바로가기
KDT/C# 프로그래밍

23/07/24 배열

by 잰쟁 2023. 7. 24.
728x90
using starcraft;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Mail;
using System.Runtime.Serialization.Formatters;
using System.Text;
using System.Threading.Tasks;

namespace Starcraft
{
    internal class App
    {

        //생성자 메서드
        public App()
        {

            //정수형 배열의 초기화
            int[] arr = new int[3]; //정수형 배열 인스턴스를 생성

            int[] arr2 = new int[] { 1, 2, 3, 4, 5 };

            //문자열 배열의 초기화
            string[] weaponNames = new string[] 
            { 
                "Axe","Sword","Bow"
            };

            //선언과 동시에 초기화시
            int[] arr3 = { 1, 2, 3 };

            //배열의 인스턴스를 생성했다는 것이 중요
            //배결 동일한 타입의 데이터들을 그룹화 관리 할때 사용
            //0번 인덱스부터 n-1 인덱스까지
            //배열은 고정적이다
            //타입의 기본값으로 채워진다

            Marine[] marines = new Marine[3];

            Console.WriteLine(marines[0]);
            Console.WriteLine(marines[1]);
            Console.WriteLine(marines[2]);

            marines[0] = new Marine();
            marines[1] = new Marine();
            marines[2] = new Marine();

            Console.WriteLine("marines.Length: {0}", marines.Length);
            for(int i = 0; i<marines.Length; i++)
            {
                Console.WriteLine(marines[i]);
            }

            //읽기 전용, marines 개체에 대한 요소를 절 ~ 대 수정하지 마세요!!!!!!!
            foreach(Marine marine in marines)  //int i 가 아니라 해당하는 타입과 그에 맞는 이름 지어주기(marines니까 marine으로)
            {
                Console.WriteLine(marine);
            }


        }
    }
}