티스토리 뷰

반응형

1. 동적 배열과 정적 배열

동적 배열은 가변적 크기를 가진 배열이며 정적 배열은 정해진 크기를 가진 배열을 말합니다.

C언어의 동적 배열을 이용할 때 malloc. 정적 배열은 자료형 변수명[크기];.

C# 언어의 동적 배열은 List<자료형>. 정적 배열은 자료형[크기] 변수명;.

위와 같이 사용합니다.




이번에 사용할 C#에서 1차원 동적 배열을 만드는 것은 자주 사용하던 방식인 List<자료형>이며. 2차원 배열에서는 같은 방법이지만 다른 방법이 존재합니다.

첫 번째는. List<자료형[]>방식이며 두 번째는 List<List<자료형>>방식입니다.



제가 이번에 소개해드릴 방법은 두 번째이며 코드의 주석과 코드의 값들을 바꿔가며 하나씩 테스트해보시길 바랍니다.

 

 

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

namespace ConsoleListTest
{
    class Program
    {
        static void Main(string[] args)
        {
            List<List<int>> Number = new List<List<int>>(); //2차원 동적 배열 생성. using System.Collections.Generic;
            for (int i = 0 ; i < 10 ; i++)
            {
                Number.Add(new List<int>()); //첫번째 for문이 시작될때 마다 내부의 List를 초기화 하고 그것을 추가합니다.
            
                for (int j = 0 ; j < 20 ; j++)
                {
                    Number[i].Add(i + j); //위 코드에서 초기화한 List에 i + j를 추가합니다.
                }
            }

            for(int i = 0 ; i < Number.Count; i++)
            {
                for(int j = 0 ; j < Number[i].Count ; j++)
                {
                    Console.WriteLine("id = " + i + " Value = " + Number[i][j]); //출력 방식은 2차원 배열과 동일합니다.
                }
                Console.WriteLine(); //줄내림.
            }
        }
    }
}

 

결과 화면 i의 3번째 까지만.

 

 

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함