배열, 슬라이싱, List<T>, Dictionary<TKey,TValue>
배열을 만들고 사용하며, 슬라이스를 복사하고, 동적 항목과 키 기반 조회에 List 및 Dictionary 를 사용합니다.
배열, 슬라이싱, List<T>, Dictionary<TKey,TValue>은(는) CoddyKit의 무료 C# Academy 강의입니다. 이것은 3개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 C# Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. C# Academy 강의에는 총 3개의 강의가 포함되어 있습니다.
강의 개요
목표: 알맞은 컨테이너를 선택합니다.
- Array: 고정된 크기, 빠른 인덱싱
- List<T>: 크기가 늘어나거나 줄어듦
- Dictionary<TKey,TValue>: 빠른 키 조회
- 복사를 통한 간단한 배열 부분 추출
배열 기본
배열은 크기가 고정되고 인덱스로 접근할 수 있습니다. Length와 0부터 시작하는 인덱스를 사용합니다.
using System;
public class Program
{
public static void Main(string[] args)
{
int[] nums = new int[] { 10, 20, 30 };
Console.WriteLine("Length = " + nums.Length);
Console.WriteLine("First = " + nums[0]);
Console.WriteLine("Last = " + nums[nums.Length - 1]);
// Update by index
nums[1] = 25;
Console.WriteLine("Updated middle = " + nums[1]);
}
}
복사를 통한 배열 부분 추출
C# 6에는 범위 연산자가 없습니다. Array.Copy를 사용하는 작은 helper를 만들어 부분 배열을 복사합니다.
using System;
public class Program
{
// Copy a slice [start, start+count) into a new array
public static int[] Slice(int[] src, int start, int count)
{
int[] dst = new int[count];
Array.Copy(src, start, dst, 0, count);
return dst;
}
public static void Main(string[] args)
{
int[] data = new int[] { 5, 6, 7, 8, 9 };
int[] middle = Slice(data, 1, 3); // {6,7,8}
Console.WriteLine("Slice len=" + middle.Length + " first=" + middle[0] + " last=" + middle[middle.Length - 1]);
}
}
List<T> 기본
List<T>는 자동으로 크기를 조정합니다. Add/Insert/Remove와 Count를 사용합니다.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
List<string> items = new List<string>();
items.Add("apple");
items.Add("banana");
items.Insert(1, "kiwi"); // apple, kiwi, banana
Console.WriteLine("Count = " + items.Count);
Console.WriteLine("Second = " + items[1]);
items.Remove("apple");
Console.WriteLine("After remove, first = " + items[0]);
}
}
Dictionary 기본
Dictionary는 키-값 쌍을 저장합니다. 안전하게 조회하려면 ContainsKey/TryGetValue를 사용합니다.
using System;
using System.Collections.Generic;
public class Program
{
public static void Main(string[] args)
{
Dictionary<string, int> ages = new Dictionary<string, int>();
ages["Ada"] = 28; // add
ages["Alan"] = 35; // add
ages["Alan"] = 36; // update
int value;
if (ages.TryGetValue("Ada", out value))
{
Console.WriteLine("Ada age = " + value);
}
Console.WriteLine("Has Grace? " + ages.ContainsKey("Grace"));
}
}
컬렉션 선택
선택 기준:
- 크기가 고정되고 숫자 인덱싱이 필요하면 Array
- 크기가 변하면 List<T>
- 고유 키가 있으면 Dictionary<K,V>
- Array.Copy helper로 부분 배열 복사
키 조회를 위한 선택
복습
복습: 배열은 크기가 고정되며, Array.Copy로 부분 배열을 복사합니다. 크기가 변하는 목록에는 List<T>를, 빠른 키 조회에는 Dictionary<K,V>를 사용합니다.
자주 묻는 질문
“배열, 슬라이싱, List<T>, Dictionary<TKey,TValue>” 강의는 무료인가요?
네 — “배열, 슬라이싱, List<T>, Dictionary<TKey,TValue>” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 C# Academy 강의 전체를 잠금 해제할 수 있습니다. C# Academy 강의에는 총 3개의 강의가 포함되어 있습니다.
“배열, 슬라이싱, List<T>, Dictionary<TKey,TValue>”에서 뭘 배우나요?
배열을 만들고 사용하며, 슬라이스를 복사하고, 동적 항목과 키 기반 조회에 List 및 Dictionary 를 사용합니다. 브라우저에서 직접 실행하는 실습 코드로 C# Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
C# Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 C# Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 3개 중 1번째 강의입니다.
“배열, 슬라이싱, List<T>, Dictionary<TKey,TValue>” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 C# Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 C# Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 배열, 슬라이싱, List , Dictionary
- foreach 패턴과 컬렉션 이니셜라이저
- LINQ 미리 보기: Where, Select, OrderBy, Take/Skip, 지연 실행