산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C# 배열 마스터하기: 선언, 초기화, 조작과 LINQ 연산

C# 배열 마스터하기

C#에서 배열 선언, 초기화, 활용법을 실전 코드 예제, 루핑 기법, LINQ 연산과 함께 다룹니다.

배열은 같은 타입 요소의 고정 크기 시퀀스를 저장합니다. 예를 들어 학생 나이 5개를 별도 변수 대신 단일 배열로 관리할 수 있습니다.

C# 배열 마스터하기: 선언, 초기화, 조작과 LINQ 연산

1. C# 배열 선언

다음 문법으로 배열 선언:

datatype[] arrayName;

예시:

int[] age;

age는 정수 값들을 담을 수 있습니다.

배열 크기 결정

요소 수만큼 메모리 할당:

// 배열 선언
int[] age;
// 5개 요소 메모리 할당
age = new int[5];

또는 한 문장으로 선언과 할당:

int[] age = new int[5];

2. 배열 초기화

선언 시 초기화 가능:

int[] numbers = {1, 2, 3, 4, 5};

컴파일러가 초기화 리스트로부터 크기 추론.

선언 후 개별 요소 설정도 가능:

// 배열 선언
int[] age = new int[5];
// 요소 초기화
age[0] = 12;
age[1] = 4;
age[2] = 5;
// …
C# 배열 마스터하기: 선언, 초기화, 조작과 LINQ 연산

3. 요소 접근

인덱스로 요소 조회:

// 세 번째 요소
array[2];
// 다섯 번째 요소
array[4];

예제: 배열 요소 접근

using System;
namespace AccessArray {
    class Program {
        static void Main(string[] args) {
            // 배열 생성
            int[] numbers = {1, 2, 3};
            // 첫 번째 요소 접근
            Console.WriteLine("Element at index 0 : " + numbers[0]);
            // 두 번째 요소 접근
            Console.WriteLine("Element at index 1 : " + numbers[1]);
            // 세 번째 요소 접근
            Console.WriteLine("Element at index 2 : " + numbers[2]);
            Console.ReadLine();
        }
    }
}

출력

Element at index 0 : 1
Element at index 1 : 2
Element at index 2 : 3

4. 요소 수정

인덱스에 새 값 할당으로 요소 변경:

using System;
namespace ChangeArray {
    class Program {
        static void Main(string[] args) {
            // 배열 생성
            int[] numbers = {1, 2, 3};
            Console.WriteLine("Old Value at index 0: " + numbers[0]);
            // 값 업데이트
            numbers[0] = 11;
            Console.WriteLine("New Value at index 0: " + numbers[0]);
            Console.ReadLine();
        }
    }
}

출력

Old Value at index 0: 1
New Value at index 0: 11

5. 루프로 순회

for나 foreach로 배열 순회.

For 루프 예제

using System;
namespace AccessArrayFor {
    class Program {
        static void Main(string[] args) {
            int[] numbers = { 1, 2, 3};
            for(int i=0; i < numbers.Length; i++) {
                Console.WriteLine("Element at index " + i + ": " + numbers[i]);
            }
            Console.ReadLine();
        }
    }
}

출력

Element at index 0: 1
Element at index 1: 2
Element at index 2: 3

numbers.Length로 배열 크기 획득.

Foreach 루프 예제

using System;
namespace AccessArrayForeach {
    class Program {
        static void Main(string[] args) {
            int[] numbers = {1, 2, 3};
            Console.WriteLine("Array Elements: ");
            foreach(int num in numbers) {
                Console.WriteLine(num);
            }
            Console.ReadLine();
        }
    }
}

출력

Array Elements:
1
2
3

6. System.Linq으로 배열 연산

System.Linq 네임스페이스는 배열 조작에 강력한 메서드 제공.

최솟값과 최댓값 찾기

using System;
using System.Linq;
namespace ArrayMinMax {
    class Program {
        static void Main(string[] args) {
            int[] numbers = {51, 1, 3, 4, 98};
            Console.WriteLine("Smallest Element: " + numbers.Min());
            Console.WriteLine("Largest Element: " + numbers.Max());
            Console.ReadLine();
        }
    }
}

출력

Smallest Element: 1
Largest Element: 98

평균 계산

using System;
using System.Linq;
namespace ArrayFunction {
    class Program {
        static void Main(string[] args) {
            int[] numbers = {30, 31, 94, 86, 55};
            float sum = numbers.Sum();
            int count = numbers.Count();
            float average = sum / count;
            Console.WriteLine("Average : " + average);
            Console.WriteLine("Average using Average() : " + numbers.Average());
            Console.ReadLine();
        }
    }
}

출력

Average : 59.2
Average using Average() : 59.2

참고: using System.Linq; 추가로 Min, Max, Sum, Count, Average 메서드 사용 가능.

C 언어

  1. C# 가변 배열(Jagged Array): 선언, 초기화, 접근 완전 가이드
  2. C++ 배열을 함수에 전달하는 방법: 실전 가이드
  3. C 언어에서 1차원 및 2차원 배열을 함수에 전달하는 방법 – 실전 가이드
  4. C 언어에서 배열과 포인터의 관계 이해하기
  5. Java 배열 복사 기법: 대입, 루프, System.arraycopy, Arrays.copyOfRange 총정리
  6. C++ 배열 완전 정복: 선언, 초기화, 포인터 기법
  7. C++ 동적 배열 할당 완벽 가이드: new, delete, 실전 코드 예제
  8. Java 배열 튜토리얼: 선언, 생성, 초기화와 예제 코드
  9. MATLAB: 다차원 배열과 특수 배열 마스터하기
  10. 볼 그리드 어레이(BGA) 완전 가이드: 고밀도 PCB 기술의 모든 것