딕셔너리 (Dictionary)
📖 개념 설명
딕셔너리는 키(Key)와 값(Value)을 쌍으로 저장합니다. 사전처럼 찾아볼 수 있습니다.
Dictionary<string, int> scores = new Dictionary<string, int>();
scores["홍길동"] = 1000;
scores["김철수"] = 2000;
int hongScore = scores["홍길동"]; // 1000
테트리스 예시:
Dictionary<int, Vector2Int[]> shapes = new Dictionary<int, Vector2Int[]>();
shapes[0] = new Vector2Int[] {...}; // I 모양
shapes[1] = new Vector2Int[] {...}; // O 모양
🛠️ 실습: 딕셔너리로 키-값 저장·조회하기
목표: 이름(키)으로 점수(값)를 저장하고 꺼내 봅니다.
이 실습 전용 씬 만들기 (환경 설정)
먼저 이 실습 전용 씬을 만든 뒤 아래 순서로 진행합니다. (자세한 씬 만드는 방법은 개념 실습 테스트 환경 가이드의 씬 만드는 방법 참고.)
이 실습만 할 전용 씬이 없으면 아래 순서로 한 번만 만듭니다. (이미 ConceptTest_Dictionary 씬이 있으면 File → Open Scene으로 열고 아래 실습만 이어서 하세요.)
- File → New Scene → Basic (Built-in) 또는 Empty → Create
- File → Save As → 저장 위치: Assets/Scenes → 파일 이름: ConceptTest_Dictionary → Save
- 아래 실습은 모두 이 씬에서 진행합니다. (다른 문서로 왔다 갔다 하지 않습니다.)
수행 과정
- Unity에서 새 C# 스크립트 생성
- 이름:
DictionaryTest
- 이름:
- 다음 코드 작성 ```csharp using UnityEngine; using System.Collections.Generic;
public class DictionaryTest : MonoBehaviour { void Start() { Dictionary<string, int> scores = new Dictionary<string, int>(); scores[“철수”] = 100; scores[“영희”] = 200; scores[“민수”] = 150;
Debug.Log("철수 점수: " + scores["철수"]);
Debug.Log("영희 점수: " + scores["영희"]);
// 키가 있는지 확인
if (scores.ContainsKey("민수"))
{
Debug.Log("민수 점수: " + scores["민수"]);
}
} } ```
- Play 후 Console 확인
- 철수 100, 영희 200, 민수 150 출력
- 직접 해보기:
scores["새이름"] = 300;을 추가하고 출력해 보세요.