C# 프로그래밍 - 배열(선언, 초기화, 크기지정, 자주 사용하는 메서드)

반응형

C# 프로그래밍 -  배열(선언, 초기화, 크기지정, 자주 사용하는 메서드)

배열

배열(array)은 동일한 타입의 데이터를 저장할수있는 자료형입니다. 동일 타입 변수들로 이루어진 데이터 집합을 메모리 상의 연속된 공간에 저장하고 인덱스를 통해 각 요소에 접근할 수 있습니다. 

배열 선언

배열은 기본적으로 데이터 타입, 스퀘어 브라켓 [] , 배열이름으로 선언합니다. 

타입[] 배열명;

기본적인 배열 선언(객체화되지않은 배열)
정수 타입의 데이터 집합을 저장하기위한 배열을 선언합니다.
int[] intArray;

배열의 크기 지정 및 초기화

배열을 선언할때 배열의 크기를 지정하고 초기값을 할당할 수 있습니다. new 키워드를 사용하여 배열을 객체화하고 squre bracket []에 배열의 크기 및 요소의 개수를 설정합니다

5개의 정수값을 저장하기위한 배열을 선언하고 초기화합니다. 각 요소는 기본값인 0으로 자동으로 초기화됩니다.
int[] scores = new int[5];

인덱스로 배열의 각 요소에 값을 할당합니다. 인덱스는 0부터 시작하며 [0]는 배열의 첫번째 요소를 의미합니다.
scores[0]= 3;
scores[1]= 41;
scores[4]= 71;


string[] names = new string[3]; 
names[0] = "david"; 
names[1] = "marry";
names[2] = "john";


배열의 초기값 설정
배열의 초기값을 할당할때 curly bracket {} 을 사용합니다.
int[] scores = new int[] { 3, 41, 0, 0, 71 };
string[] names= new string[]{"david", "marry", "john"};

더 간단한 방법(new 키워드를 생략)
int[] scores = { 3, 41, 0, 0, 71 };
string[] names= {"david", "marry", "john"};

 


배열 요소 접근

배열 요소는 0부터 시작하는 인덱스를 사용하여 접근합니다. 예를 들어 첫 번째 요소는 인덱스 0을 사용하여 접근합니다.

배열의 첫번째 요소에 접근
int firstScore = scores[0];

배열의 두번째 요소의 값을 설정
scores[1] = 88;


반복문에서 배열 순회
Array.Length 속성을 사용하여 배열의 크기를 확인하고 반복문(for 또는 foreach 문)에서 배열의 모든 요소에 접근

int length = scores.Length;
for (int i = 0; i < length; i++)
{
    Console.WriteLine(scores[i]);
}
 

foreach (int score in scores)
{
    Console.WriteLine(score);
}



 

자주 사용하는 배열 메서드

Array.Sort()
배열을 오름차순으로 정렬합니다.

int[] scores = new int[] { 3, 41, 0, 0, 71 };
Array.Sort(scores);
foreach (int score in scores)
{
Console.WriteLine(score);
}

0
0
3
41
71
 
문자열 배열에 대해서 사전식 순서(알파벳 순서)로  정렬합니다. 
string[] names = new string[] { "david", "marry", "john", "anna", "zara" };
Array.Sort(names);
foreach (string name in names)
{
Console.WriteLine(name);
}

anna
david
john
marry
zara
 
 
 
Array.Reverse()
배열의 요소를 역순으로 정렬합니다.

Array.Reverse(scores);
foreach (int score in scores)
{
Console.WriteLine(score);
}

71
41
3
0
0
 

Array.Reverse(names);
foreach (string name in names)
{
Console.WriteLine(name);
}

zara
marry
john
david
anna


 
 

Array.IndexOf()
배열에서 특정 요소의 인덱스를 찾습니다.
 
int[] scores = new int[] { 2, 21, 5, 15, 71 };
int index = Array.IndexOf(scores, 15); 
Console.WriteLine("\n15의 인덱스: " + index);
 
15의 인덱스: 3

 





반응형

댓글

Designed by JB FACTORY