본문 바로가기
Program Language/C#

Part2. C# 기초 다지기(2. Array 클래스)

by 토담이아빠 2023. 2. 6.

Array 클래스

 

C#에서 배열은 System.Array 클래스로 부터 상속됩니다. 따라서 Array클래스의 속성과 메서드를 사용할 수 있습니다.

이번 포스팅에서는 Array 클래스의 속성과 메서드에 대해서 정리했습니다.


System.Array 클래스의 주요 속성과 메서드

 

아래 표에 System.Array 클래스의 주요 속성과 메서드를 정리했습니다.


  속성 및 메서드 설명
속성 Length 배열 요소의 총 개수
Rank 배열의 차수(차원)
메서드 Array.Sort(a) a 배열을 오름차순으로 정렬
Array.Reverse(a) a 배열 요소들의 순서를 뒤집어줌
Array.Clear(a) a 배열을 초기화
Clone() 동일한 내용을 갖는 배열을 복사(얕은 복사)
Array.Copy(a.n1, b.n2, len) a 배열의 n1부터 len 길이만큼 b 배열의 n2에 복사
CopyTo(b.n) a 배열을 b 배열의 n 인덱스 위치에 복사
GetLength(n) n 차원의 요소 개수를 리턴(n은 0부터 시작)
GetValue() 인덱스 위치의 요소값을 리턴
SetValue() 인덱스 위치에 지정한 값을 저장

다음은 위 속성과 메서드를 사용하는 예제입니다.


using System;
using System.Data;

namespace Array_exam
{
    internal class Program
    {     
        static void Main(string[] args)
        {
            int[] a = { 1, 2, 3, 4, 5, 6, 7 }; //배열을 선언하고 초기화
            PrintArray(a);

            int[] b;
            b = (int[])a.Clone(); //배열 복사 방법 1
            PrintArray(b);

            int[] c = new int[10];
            Array.Copy(a, 0, c, 1, 3);  //배열 복사 방법 2
            PrintArray(c);

            a.CopyTo(c, 3);        // 배열 복사 방법 3
            PrintArray(c);

            Array.Sort(a);         // 오름차순으로 정렬
            PrintArray(a);

            Array.Reverse(a);      // 내림차순으로 정렬
            PrintArray(a);

            Array.Clear(a, 0, a.Length); // 배열 초기화
            PrintArray(a);
   
        }

        private static void PrintArray(int[] a)
        {
            foreach (var i in a)
                Console.Write("{0,5}", i);
            Console.WriteLine();
        }
    }
}

결과

    1    2    3    4    5    6    7
    1    2    3    4    5    6    7
    0    1    2    3    0    0    0    0    0    0
    0    1    2    1    2    3    4    5    6    7
    1    2    3    4    5    6    7
    7    6    5    4    3    2    1
    0    0    0    0    0    0    0

[Review]

"초보자를 위한 C# 200제(2판) / 저자 : 강병익

댓글