[C#] ArraySegment를 이용하여 배열 가져오기

2022. 6. 7. 12:51·언어/C#
728x90

배열 안에 일부를 가져오기 위해서 새로운 배열을 파는 것 말고도 ArraySegment를 사용하는 방법이 있다.

 

static void Main(string[] args)
    {
        int[] arr = { 1, 2, 3, 4, 5 };
        int start = 0;
        int end = 3;

        ArraySegment<int> segment = new ArraySegment<int>(arr, start, end);

        Console.WriteLine(String.Join(", ", segment)); // 배열을 이어붙일 수 있는 간단한 메서드.
    }

 

ArraySegment의 start는 Offset을 의미한다. 그대로 받아들이면 배열의 변화량을 의미하지만 쉽게 이해하기 위해서는 숫자를 가져올 배열의 시작점을 몇 번째로 할 거냐는 의미다. end는 몇 개의 숫자를 빼내올 것이냐는 의미다. 우리는 0번째 인덱스부터 시작해 3개의 값을 가져왔으니 결과값이 1, 2, 3이 된다.

 

이때 String.Join은 배열을 가져오는 메서드다. 쌍따옴표 안에 있는 문자를 각 element 사이에 넣어준다.

728x90

'언어 > C#' 카테고리의 다른 글

[C#] 인터페이스(Interface)란?  (0) 2022.06.16
[C#] Span이란?  (0) 2022.06.07
[C#] 바이트 배열을 int로, int를 바이트 배열로  (0) 2022.06.04
[C#] delegate (델리게이트 / 대리자)와 Invoke  (0) 2022.05.31
[C#] 이벤트(event)란?  (0) 2022.05.27
'언어/C#' 카테고리의 다른 글
  • [C#] 인터페이스(Interface)란?
  • [C#] Span이란?
  • [C#] 바이트 배열을 int로, int를 바이트 배열로
  • [C#] delegate (델리게이트 / 대리자)와 Invoke
돌멩이수프
돌멩이수프
Information technology
  • 돌멩이수프
    WHAT DOES "IT" STAND FOR?
    돌멩이수프
  • 전체
    오늘
    어제
    • 분류 전체보기 (238) N
      • 언어 (73)
        • html (3)
        • css (1)
        • java (6)
        • C (26)
        • C++ (2)
        • C# (29)
      • 공부 (7)
        • Unity (43)
        • 게임 서버 (26)
        • 네트워크 (5)
        • 데이터베이스 (7)
        • EFCore (19)
        • 기타 (14)
        • Git (5)
        • 운영체제 (1)
        • 소프트웨어공학 (21)
      • 2024-여름 (12)
      • 자기 관리 (3) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Python
    라즈베리파이
    Entityfamework
    코딩
    C#
    네트워크
    C
    백준
    게임서버
    자바
    java
    coding
    EFCore
    EntityFramework
    유니티
    디자인패턴
    tcp
    HTML
    unity
    C언어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
돌멩이수프
[C#] ArraySegment를 이용하여 배열 가져오기
상단으로

티스토리툴바