C# 기초 강의실

시삽: 레드플러스 님 
게시판 이동:
 제목 : [실습] 열거형(Enumeration)을 사용한 데이터 나열하기
글번호: 1379
작성자: 레드플러스
작성일: 2018/01/28 오후 11:20:00
조회수: 1940

[실습] 열거형을 사용한 데이터 나열하기

소개
열거형을 사용하여 결제방법에 대한 상수 2개와 주문 상태에 대한 3가지 상태를 저장하여 프로그램 코드 내에서 각각의 상수에 접근할 때 열거형을 통해서 접근하는 코드를 살펴보겠습니다.

따라하기 
(1) 새로운 C# 콘솔 프로젝트를 다음과 같이 생성합니다.
프로젝트 형식    템플릿    이름    위치
Visual C#    콘솔 응용 프로그램    열거형    C:\C#

(2) 솔루션 탐색기에서 Program.cs 파일을 열거형.cs 파일로 이름을 변경한 후 이미 만들어져 있는 모든 코드를 삭제한 후 다음과 같이 프로그램을 작성합니다.
<코드> 열거형.cs
// 열거형: 하나의 이름으로 여러 개의 상수를 묶어서 관리
// 온라인 쇼핑몰
// 결제방법: 온라인입금, 신용카드, 포인트결제
// 주문상태: 신규주문, 주문확인, 주문취소
using System;
 
namespace 열거형
{
    public enum 결제방법
    {
        온라인입금,      // 0
        신용카드,       // 1
        계좌이체        // 2
    }
 
    public enum 주문상태
    {
        신규주문,               // 0
        주문확인,               // 1
        주문취소 = 9,           // 9
        배송중 = 3,             // 3
        배송완료 = 5,           // 5
        주문완료 = 7            // 7
    }
 
    class 열거형
    {
        static void Main(string[] args)
        {
            Console.WriteLine($"결제방법 : {결제방법.계좌이체}, {(int)결제방법.계좌이체}");
            Console.WriteLine($"주문상태 : {주문상태.주문완료}, {(int)주문상태.주문완료}");
 
            결제방법 input = 결제방법.계좌이체;
 
            switch (input)
            {
                case 결제방법.온라인입금:
                    Console.WriteLine("온라인입금에 맞는 기능 수행");
                    break;
                case 결제방법.신용카드:
                    Console.WriteLine("신용카드에 맞는 기능 수행");
                    break;
                case 결제방법.계좌이체:
                    Console.WriteLine("계좌이체에 맞는 기능 수행");
                    break;
                default:
                    Console.WriteLine("에러/경고");
                    break;
            }
        }
    }
}

</코드>

(3) 소스 코드를 다 입력한 후 [Ctrl]+[F5]를 눌러 프로그램을 실행하면 명령프롬프트 창에 다음과 같이 출력됩니다.
 
결제방법 : 계좌이체, 2
주문상태 : 주문완료, 7
계좌이체에 맞는 기능 수행
계속하려면 아무 키나 누르십시오 . . .

 

마무리
어느 시점에서 열거형을 만들어야 하는지를 결정하기란 쉽지 않다. 다만, 닷넷에서 이미 만들어져 있는 열거형을 반복 사용함으로써 그 사용 용도에 대해서 이해하는 방법으로 열거형에 대한 학습을 진행하도록 하겠습니다. 
 

 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트

(댓글을 남기려면 로그인이 필요합니다.)

관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 15. 알고리즘(Algorithm) - 레드플러스 2003-03-31 6635
  14. 구조체, 열거형, 네임스페이스 GuidDemo.png(34 KB) 레드플러스 2003-03-31 7062
  예제. ASP3.0의 ADO 컴포넌트 모방하기 - 레드플러스 2004-11-07 4876
  14.1. 구조체 - 레드플러스 2007-02-06 4248
  14.1.1. 구조체 : 구조체.cs - 레드플러스 2007-02-06 4464
  14.2 열거형(Enumeration) - 레드플러스 2007-02-06 4316
  14.2.1. 열거형 : 열거형.cs - 레드플러스 2007-02-06 4568
  Enum.GetNames() 메서드 EnumGetNames.png(25 KB) 레드플러스 2014-05-07 2253
현재글 [실습] 열거형(Enumeration)을 사용한 데이터 나열하기 - 레드플러스 2018-01-28 1940
다음글 13. 클래스와 상속 - 레드플러스 2003-03-31 6425
 
손님 사용자 Anonymous (손님)
로그인 Home