자세히 보기: Select Case를 사용하여 여러 선택 사항 중에서 결정
업데이트: 2007년 11월
이 단원에서는 Select Case 문을 사용하여 여러 조건에 따라 코드를 실행하는 방법을 배웁니다.
이전 단원에서는 If...Then 문을 사용하여 여러 조건에 대해 서로 다른 코드 블록을 실행하는 방법을 설명했습니다. If...Then 문에서 ElseIf 키워드를 사용하여 셋 이상의 조건을 계산할 수는 있지만, Select Case 문을 사용하면 여러 조건을 보다 효과적으로 계산할 수 있습니다.
Select Case 문을 사용하면 조건이나 사례를 필요한 만큼 사용할 수 있으므로 여러 옵션을 선택할 수 있는 상황에 대한 코드를 편리하게 작성할 수 있습니다. 예를 들어 프로그램에서 String 변수를 사용하여 색 선택을 저장하며 사용자가 색 값을 가져와야 할 경우 Select Case 문에 대한 코드는 다음과 같습니다.
Select Case Color
Case "red"
MsgBox("You selected red")
Case "blue"
MsgBox("You selected blue")
Case "green"
MsgBox("You selected green")
End Select
이 코드가 실행되면 Select Case 줄은 식의 값(Color)을 결정합니다. Color가 String 변수이고 이 변수가 Select Case 문을 포함하는 메서드에 대한 매개 변수일 경우 Color의 값을 첫 번째 Case 문의 값과 비교합니다. 값이 일치하면 다음 코드 줄이 실행된 후 End Select 줄로 건너뛰고, 값이 일치하지 않으면 다음 Case 줄이 계산됩니다.
Case 문의 형태는 여러 가지이며 위의 예제에서 이 문은 String입니다. 하지만 모든 데이터 형식 또는 식이 될 수 있습니다.
다음과 같이 To 키워드를 사용하여 특정 범위의 숫자를 계산할 수 있습니다.
Case 1 To 10
이 예에서는 1과 10 사이의 임의의 숫자가 일치하는 항목으로 반환됩니다.
또한 단일 Case 문의 여러 값을 다음과 같이 쉼표로 분리하여 계산할 수도 있습니다.
Case "red", "white", "green"
이 예제에서는 세 값 중 하나가 일치하는 항목으로 반환됩니다.
다음과 같이 비교 연산자 및 Is 키워드를 사용하여 값을 계산할 수도 있습니다.
Case Is > 9
이 예제에서는 9보다 큰 임의의 수가 일치하는 항목으로 반환됩니다.
Case Else
위 예제는 가능한 모든 조건을 알고 있는 경우에 해당합니다. 그렇다면 확인할 수 없는 조건이 있을 때는 어떤 결과가 나타날까요? 예를 들어 Color 값이 yellow이면 코드는 일치하는 항목을 찾지 않고 세 개의 사례를 계산하며 메시지 상자는 표시되지 않습니다.
일치 항목이 없을 경우 다음 예제와 같이 Case Else 문을 사용하여 코드를 실행할 수 있습니다.
Select Case Color
Case "red"
MsgBox("You selected red")
Case "blue"
MsgBox("You selected blue")
Case "green"
MsgBox("You selected green")
Case Else
MsgBox("Please choose red, blue, or green")
End Select
위 코드에서 Color 값이 yellow이면 코드는 일치하는 항목을 찾지 않고 해당 값을 처음 세 Case 줄과 비교합니다. Case Else 줄에 도달하면 코드의 다음 줄이 실행된 후에 End Select로 이동됩니다.
Select Case 문을 사용하려면
파일 메뉴에서 새 프로젝트를 선택합니다.
새 프로젝트 대화 상자의 템플릿 창에서 Windows 응용 프로그램을 클릭합니다.
이름 상자에 SelectCase를 입력한 다음 확인을 클릭합니다.
새 Windows Forms 프로젝트가 열립니다.
도구 상자에서 TextBox 컨트롤과 Button 컨트롤을 각각 하나씩 폼으로 끌어 옵니다.
단추를 두 번 클릭하여 코드 편집기를 엽니다.
Button1_Click 이벤트 처리기에서 다음 코드를 입력합니다.
Dim Number As Integer = CInt(Textbox1.Text) Select Case Number Case 1 MsgBox("Less than 2") Case 2 To 5 MsgBox("Between 2 and 5") Case 6, 7, 8 MsgBox("Between 6 and 8") Case 9 To 10 MsgBox("Greater than 8") Case Else MsgBox("Not between 1 and 10") End Select
F5 키를 눌러 프로그램을 실행합니다.
텍스트 상자에 숫자를 입력하고 단추를 클릭합니다.
사용자가 입력한 수와 Case 문이 일치함을 나타내는 메시지 상자가 표시됩니다.
다음 단계
이 항목에서는 Select Case 문을 사용하여 여러 조건 중에서 선택하는 방법을 살펴보았습니다. 이제 다음 단원 "문제 해결 방법: 오류 처리"를 계속 진행할 수 있습니다.
다음 단원: 문제 해결 방법: 오류 처리
참고 항목
작업
프로그램이 두 가능성 중 하나를 선택하도록 설정: If...Then 문