VB.Net 배열: 문자열, 동적(예제 포함)

⚡ 스마트 요약

VB.Net 배열은 동일한 데이터 형식의 여러 값을 하나의 변수 이름 아래에 저장하며, 인덱스는 0부터 시작합니다. 고정 크기 배열과 동적 배열 모두 지원되며, Split 및 Join 함수는 문자열과 배열 간의 변환을 제공합니다.

  • 🔘 배열의 기본 사항: 배열은 동일한 데이터 유형의 요소를 순서대로 저장하며, 첫 번째 요소는 인덱스 0에 있고 마지막 요소는 인덱스 n-1에 있습니다.
  • ☑️ 선언: Dim 문은 Dim myData() As Integer와 같이 배열을 선언하며, 요소는 중괄호 안에 초기화할 수 있습니다.
  • 고정형 vs 동적형: 고정 크기 배열은 정해진 개수의 요소를 저장하는 반면, 동적 배열은 ReDim 및 ReDim Preserve 문을 사용하여 크기가 커집니다.
  • 🧪 접근 및 삭제: 요소는 인덱스를 통해 읽어오고, Erase 문은 배열을 제거하여 메모리를 해제합니다.
  • 🛠️ 분할 및 병합: Split 함수는 문자열을 배열로 분할하고, Join 함수는 배열 요소를 하나의 문자열로 결합합니다.
  • 🤖 AI 지원: GitHub Copilot 및 IntelliCode Visual Studio 2026에서는 일반적인 영어 프롬프트를 사용하여 배열 선언, 반복문, Split 또는 Join 호출을 생성할 수 있습니다.

VB.Net 배열

배열이란 무엇입니까?

배열은 동일한 요소를 저장하는 데 사용되는 데이터 구조입니다. 데이터 형식배열의 요소들은 인덱스 0에 첫 번째 요소가 있고 인덱스 n-1에 마지막 요소가 있는 순차적으로 정렬되어 있습니다. 여기서 n은 배열에 있는 전체 요소의 개수입니다.

배열을 선언하고 초기화하는 방법

In VB.Net, 배열은 Dim 문을 사용하여 선언됩니다. 예를 들어:

Dim myData() As Integer

위의 예에서 우리는 myData라는 이름의 배열을 정의했고, 그것은 정수 데이터 유형의 요소를 보유해야 합니다. 다음 예는 문자열 요소를 보유하는 배열을 선언하는 방법을 보여줍니다.

Dim myData(10) As String

10개의 문자열을 보유하도록 myData라는 배열을 정의했습니다.

배열을 선언할 때 초기화할 수 있습니다. 예를 들어:

Dim myData() As Integer = {11, 12, 22, 7, 47, 32}

myData 배열을 선언하고 여기에 6개의 정수 요소를 추가했습니다. 문자열의 경우에도 이 작업을 수행할 수 있습니다.

Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}

학생이라는 배열을 만들고 여기에 5개의 이름을 추가했습니다.

VB.Net의 배열은 선언 후 크기를 변경할 수 있는지 여부에 따라 두 그룹으로 나뉩니다. 첫 번째 그룹은 고정 크기 배열입니다.

고정 크기 배열

고정 크기 배열은 고정된 수의 요소를 보유합니다. 이는 정의하는 동안 보유할 요소 수를 정의해야 함을 의미합니다. 3명의 학생 이름만 포함하는 배열이 필요하다고 가정해 보겠습니다. 다음과 같이 배열을 정의하고 초기화할 수 있습니다.

Dim students(0 to 2) As String 
      
students(0) = "John"
students (1) = "Alice"
students (2) = "Antony"

우리는 students라는 이름의 문자열 배열을 선언하는 것으로 시작했습니다. 0에서 2는 배열이 인덱스 0에서 인덱스 2까지 요소를 저장할 것이라고 선언합니다. 즉, 총 3개의 요소가 있을 것입니다.

배열에 요소를 추가하기 위해 배열 이름을 사용하고 요소가 저장될 인덱스를 지정했습니다. 예를 들어, John이라는 이름은 배열의 인덱스 0에 저장됩니다. 이는 이 이름이 배열의 첫 번째 요소를 형성한다는 의미입니다. Antony는 배열의 마지막 요소가 됩니다.

요소의 개수를 미리 알 수 없는 경우 동적 배열이 더 나은 선택이 됩니다.

동적 배열

이는 원하는 수의 요소를 보유할 수 있는 배열입니다. 배열 크기는 언제든지 커질 수 있습니다. 이는 원할 때 언제든지 배열에 새 요소를 추가할 수 있음을 의미합니다. 이를 설명하기 위해 먼저 정수 배열을 정의해 보겠습니다.

Dim nums() As Integer

우리는 nums라는 정수 배열을 정의했습니다. 이제 크기 조정을 위한 공간을 제공하면서 배열에 두 개의 요소를 추가해야 합니다. 다음과 같이 ReDim 문을 사용해야 합니다.

ReDim nums(1)
nums(0) = 12
nums(1) = 23

이제 배열의 인덱스 0과 1에 두 개의 요소가 있습니다. 이미 있는 두 요소를 유지하면서 인덱스 3에 세 번째 요소를 추가해야 합니다. 우리는 다음과 같이 할 수 있습니다:

ReDim Preserve nums(2)
nums(2) = 35

이제 배열에는 세 가지 요소가 있습니다.

배열에 값이 채워지면 다음 작업은 배열에 저장된 값을 읽어오는 것입니다.

배열의 내용 검색

검색이란 배열 요소에 액세스하는 것을 의미합니다. 배열 요소에 액세스하려면 해당 인덱스를 사용합니다. 예제를 사용하여 이를 보여드리겠습니다.

1단계) 먼저 새 콘솔 애플리케이션을 생성합니다.

2단계) 다음 코드를 애플리케이션에 추가하세요.

Module Module1
    Sub Main()

       Dim students(0 to 2) As String 

        students(0) = "John"

        students(1) = "Alice"

        students(2) = "Antony"

        Console.WriteLine("First student is {0} ", students(0))

        Console.WriteLine("Second student is {0} ", students(1))

        Console.WriteLine("Third student is {0} ", students(2))


        Console.ReadKey()

    End Sub

End Module

3단계) ​​도구 모음에서 시작 버튼을 클릭하여 코드를 실행합니다. 다음과 같은 창이 나타납니다.

배열의 내용 검색

우리는 다음의 코드를 사용했습니다:

배열의 내용 검색

설명 Code:

  1. Module1이라는 모듈을 만듭니다.
  2. 기본 하위 프로시저를 만듭니다.
  3. 문자열 요소를 저장하기 위해 학생이라는 배열을 만듭니다. 배열은 인덱스 0부터 인덱스 2까지 요소를 저장하므로 총 3개의 요소가 포함됩니다.
  4. John이라는 이름을 배열의 첫 번째 요소로 추가합니다. 즉, John은 인덱스 0에 저장됩니다.
  5. 배열의 두 번째 요소로 Alice라는 이름을 추가합니다. 즉, Alice는 인덱스 1에 저장됩니다.
  6. Antony라는 이름을 배열의 세 번째 요소로 추가합니다. 즉, Antony는 인덱스 2에 저장됩니다.
  7. 학생 배열의 인덱스 0에 저장된 일부 텍스트와 요소를 콘솔에 인쇄합니다. Students(0)은 Students라는 배열의 인덱스 0에 있는 요소에 액세스하는 데 도움이 됩니다.
  8. 학생 배열의 인덱스 1에 저장된 일부 텍스트와 요소를 콘솔에 인쇄합니다. Students(1)은 Students라는 배열의 인덱스 1에 있는 요소에 액세스하는 데 도움이 됩니다.
  9. 학생 배열의 인덱스 2에 저장된 일부 텍스트와 요소를 콘솔에 인쇄합니다. Students(2)은 Students라는 배열의 인덱스 2에 있는 요소에 액세스하는 데 도움이 됩니다.
  10. 사용자가 콘솔 창을 닫는 작업을 수행할 때까지 기다리는 콘솔 창을 일시 중지합니다.
  11. 하위 절차가 종료됩니다.
  12. 모듈이 종료됩니다.

배열에 새 요소 추가

이는 동적 배열이 있는 경우에만 발생합니다. 고정 크기 차원 배열을 선언했고 배열 요소가 가득 찬 경우 새 요소를 추가할 수 없습니다. 다음 예는 동적 배열에 새 요소를 추가하는 방법을 보여줍니다.

1단계) 먼저 새 콘솔 애플리케이션을 생성합니다.

2단계) 다음 코드를 애플리케이션에 추가하세요.

Module Module1
    Sub Main()

        Dim nums() As Integer

        ReDim nums(1)
        nums(0) = 12
        nums(1) = 23

        For x = 0 To nums.Length - 1
            Console.WriteLine("Initial array element: {0}", nums(x))
        Next

        ReDim Preserve nums(2)
        nums(2) = 35

        For x = 0 To nums.Length - 1
            Console.WriteLine("Final array element: {0}", nums(x))
        Next

        Console.ReadKey()
    End Sub

End Module

3단계) ​​도구 모음에서 시작 버튼을 클릭하여 코드를 실행합니다. 다음과 같은 창이 나타날 것입니다.

배열에 새 요소 추가

우리는 다음의 코드를 사용했습니다:

배열에 새 요소 추가

설명 Code:

  1. Module1이라는 모듈을 만듭니다.
  2. 기본 하위 프로시저를 만듭니다.
  3. 정수 값을 담기 위해 nums라는 배열을 만듭니다.
  4. 위 배열은 크기 조절을 위한 공간을 허용하면서 인덱스 0과 1에 두 개의 요소를 저장하도록 지정합니다.
  5. 배열 번호의 인덱스 12에 요소 0를 추가합니다.
  6. 배열 번호의 인덱스 23에 요소 1를 추가합니다.
  7. for 루프를 사용하여 변수 x를 생성하면 배열 nums의 첫 번째 요소부터 마지막 ​​요소까지 반복하는 데 도움이 됩니다. 이제 배열에는 12와 23이라는 두 개의 요소가 있습니다.
  8. 콘솔에 일부 텍스트와 배열 요소를 인쇄합니다.
  9. for 루프를 종료하고 점프합니다.ping 코드의 다음 부분으로 넘어갑니다.
  10. 인덱스 0에서 2까지의 요소를 허용하도록 배열 nums의 크기를 조정합니다. 이제 3가 아닌 2개의 요소를 저장할 수 있습니다. Preserve 키워드는 배열의 현재 요소, 즉 12와 23을 유지하는 데 도움이 됩니다.
  11. 배열의 인덱스 35에 요소 2를 추가합니다. 이제 배열에는 12, 23, 35의 세 가지 요소가 있습니다.
  12. for 루프를 사용하여 변수 x를 생성하면 배열 nums의 첫 번째 요소부터 마지막 ​​요소까지 반복하는 데 도움이 됩니다. 이제 배열에는 12, 23, 35의 세 가지 요소가 있습니다.
  13. 콘솔에 일부 텍스트와 배열 요소를 인쇄합니다.
  14. for 루프를 종료하고 점프합니다.ping 코드의 다음 부분으로 넘어갑니다.
  15. 사용자가 콘솔 창을 닫는 작업을 수행할 때까지 기다리는 콘솔 창을 일시 중지합니다.
  16. 하위 절차가 종료됩니다.
  17. 모듈이 종료됩니다.

어레이 삭제

작업을 마친 후에는 배열을 지우는 것이 좋습니다. 주로 동적 배열을 처리할 때 그렇습니다. 이렇게 하면 메모리 공간을 확보하는 데 도움이 됩니다.

배열을 삭제하려면 Erase 문과 배열 이름을 호출하면 됩니다. 예를 들어:

Dim nums(1) As Integer
        nums(0) = 12
        nums(1) = 23
Erase nums

nums라는 정수 배열을 선언하고 여기에 두 개의 요소를 추가했습니다. Erase nums 문은 배열을 지웁니다.

VB.Net은 값을 저장하는 것 외에도 문자열과 배열 간 변환을 위한 내장 함수를 제공합니다. 그중 첫 번째가 Split 함수입니다.

분할 기능

Visual Basic .NET에서 제공하는 split 함수는 문자열을 여러 부분으로 나누어 배열에 저장하는 데 도움이 됩니다. 다음 예제는 이 함수를 사용하는 방법을 보여줍니다.

1단계) 새 콘솔 애플리케이션을 생성합니다.

2단계) 다음 코드를 애플리케이션에 추가하세요.

Module Module1
    Sub Main()

        Dim myarray() As String
        Dim guru99 As String
        Dim x As Integer

        guru99 = "Welcome, to, Guru99"
        myarray = Split(guru99, ", ")

        For x = LBound(myarray) To UBound(myarray)

            Console.WriteLine(myarray(x))

        Next

        Console.ReadKey()
    End Sub

End Module

3단계) ​​도구 모음에서 시작 버튼을 클릭하여 코드를 실행합니다. 다음과 같은 창이 나타날 것입니다.

분할 기능

우리는 다음의 코드를 사용했습니다:

분할 기능

설명 Code:

  1. Module1이라는 모듈을 만듭니다.
  2. 기본 하위 프로시저를 시작합니다.
  3. 문자열 값을 저장하기 위해 myarray라는 배열을 만듭니다.
  4. guru99라는 문자열 변수를 만듭니다.
  5. x라는 정수 변수를 만듭니다.
  6. 변수 guru99에 문자열을 할당합니다.
  7. 위의 문자열을 여러 부분으로 분할하여 myarray라는 배열에 배치합니다. ","(쉼표)는 구분 기호이므로 분할 기능은 이를 사용하여 문자열의 다양한 부분의 끝을 표시합니다.
  8. 변수 x를 사용하여 myarray라는 배열을 반복합니다. LBound 및 UBound는 각각 배열의 하한과 상한을 지정합니다.
  9. 콘솔에 myarray라는 배열의 값을 인쇄합니다.
  10. for 루프를 종료합니다.

조인 기능

join 함수는 여러 배열을 단일 문자열로 결합하는 데 도움이 됩니다. 다음 예는 이를 보여줍니다.

1단계) 먼저 새 콘솔 애플리케이션을 생성합니다.

2단계) 다음 코드를 애플리케이션에 추가하세요.

Module Module1
    Sub Main()

        Dim students(0 To 2) As String

        students(0) = "John"

        students(1) = "Alice"

        students(2) = "Antony"

        Dim classmates As String


        classmates = Join(students, ", ")

        Console.WriteLine(classmates)

        Console.ReadKey()
    End Sub

End Module

3단계) ​​도구 모음에서 시작 버튼을 클릭하여 코드를 실행합니다.

조인 기능

우리는 다음의 코드를 사용했습니다:

조인 기능

설명 Code:

  1. Module1이라는 모듈을 만듭니다.
  2. 기본 하위 프로시저를 만듭니다.
  3. 3개의 문자열 값을 보유하기 위해 학생이라는 배열을 만듭니다.
  4. 배열의 인덱스 0에 John이라는 이름을 추가합니다.
  5. 배열의 인덱스 1에 Alice라는 이름을 추가합니다.
  6. 배열의 인덱스 2에 Antony라는 이름을 추가합니다.
  7. 문자열 데이터 유형의 classmates라는 변수를 정의합니다.
  8. 배열 students의 모든 요소를 ​​쉼표(,)로 구분하여 결합합니다. 이 연산의 결과는 변수 classmates에 할당됩니다.
  9. 콘솔에 classmates 변수의 내용을 인쇄합니다.
  10. 사용자가 콘솔 창을 닫는 작업을 수행할 때까지 기다리는 콘솔 창을 일시 중지합니다.
  11. 기본 하위 프로시저를 종료합니다.
  12. 모듈을 종료합니다.

자주 묻는 질문

네. 모든 VB.Net 배열은 인덱스 0부터 시작하므로 첫 번째 요소는 인덱스 0에 있고 마지막 요소는 인덱스 n-1에 위치합니다. 하한값은 항상 0이며 변경할 수 없습니다.

배열의 요소 총 개수를 반환하는 Length 속성을 사용하세요. 예를 들어 `nums.Length`와 같이 사용할 수 있습니다. UBound 함수는 가장 높은 인덱스를 반환하는데, 배열은 인덱스 0부터 시작하므로 UBound는 Length에서 1을 뺀 값과 같습니다.

공유 배열의 `Array.Sort` 메서드를 호출하고 배열을 전달합니다. 예를 들어 `Array.Sort(nums)`와 같이 호출하면 배열의 요소들이 제자리에서 오름차순으로 정렬됩니다. 배열을 사용하세요.Reverse 그 후 동일한 요소들을 내림차순으로 정렬합니다.

다차원 배열 또는 직사각형 배열은 괄호 안에 쉼표를 사용하여 행과 열에 데이터를 저장합니다. 예를 들어 Dim grid(2, 3) As Integer와 같습니다. 각 행에는 동일한 수의 요소가 저장됩니다.

불규칙 배열은 요소 자체가 배열인 배열로, 각 행에 서로 다른 개수의 요소가 포함될 수 있습니다. 이러한 배열은 Dim data()() As Integer와 같이 두 쌍의 괄호를 사용하여 선언합니다.

배열은 생성 후 크기가 고정되어 있으며, 크기를 조정하려면 `ReDim` 메서드를 사용해야 합니다. 반면, `List(Of T)`는 자동으로 크기가 커지고 줄어들며, `Add`, `Remove`, `Sort` 메서드를 제공하여 요소 개수가 자주 변경될 때 사용하기 편리합니다.

네. GitHub Copilot은 일반 주석을 Dim 선언, ReDim 크기 조정, Split 또는 Join 호출을 포함한 완전한 배열 코드로 변환합니다. 제안을 수락하기 전에 인덱스와 데이터 형식이 올바른지 항상 검토하세요.

예. 비주얼 스튜디오 2026개의 GitHub Copilot과 Intelli가 짝을 이룹니다.Code 배열 루프 자동 완성, 입력 시 범위를 벗어난 인덱스 표시, 적절한 배열 메서드 제안 등을 통해 프로그램 실행 전 런타임 오류를 줄여줍니다.

이 게시물을 요약하면 다음과 같습니다.