본문 바로가기
Coding/C#

c# 무작정 따라하기_ Enum(열거형)

by 찡콩찡 2022. 12. 23.

https://www.youtube.com/watch?v=ucKM_5pYano&list=PLoFFz2j8yxxxH_3ustbHATXtMsHZ-Saei&index=5 

 


Enum ( 열거형) 사용 목적

  • 미리 정해 놓은 값들 중 하나의 값만 가질 수 있는 변수를 선언
  • 프로그램 개발에서 실수를 줄이고 가독성을 높임
  • 0부터 순차적으로 값이 부여 되나 명시적으로 설정 가능  
Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Study_enum
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        //enum정의
        private enum enumDay { 
            Monday,
            Tuesday,
            Wednesday,
            Thursday,
            Friday,
            Saturday,
            Sunday
        }
        enum enumTime {
        
            Morning,
            Lunch,
            Dinner
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            lboxDay.Items.Add(enumDay.Monday.ToString());
            lboxDay.Items.Add(enumDay.Tuesday.ToString());
            lboxDay.Items.Add(enumDay.Wednesday.ToString());
            lboxDay.Items.Add(enumDay.Thursday.ToString());
            lboxDay.Items.Add(enumDay.Friday.ToString());
            lboxDay.Items.Add(enumDay.Saturday.ToString());
            lboxDay.Items.Add(enumDay.Sunday.ToString());

            lboxTime.Items.Add(enumTime.Morning);
            lboxTime.Items.Add(enumTime.Lunch);
            lboxTime.Items.Add(enumTime.Dinner);
        }


        private void btnResult_Click(object sender, EventArgs e)
        {

            //짝꿍과 Monday(요일) Morning에 보기로 했습니다.

            string strResult = tboxName.Text + "와/과" + lboxDay.SelectedItem.ToString() +
                "요일" + lboxTime.SelectedItem.ToString() + "에 보기로 했습니다";

            tboxResult.Text = strResult;
        }

        private void btnResult2_Click(object sender, EventArgs e)
        {
            string strResult = string.Format("{0}과  {1}(요일) {2}에 보기로 했습니다."
                , tboxName.Text, lboxDay.SelectedItem.ToString(), lboxTime.SelectedItem.ToString());

            tboxResult.Text = strResult;
        }
    }
}

 

만든 UI

 

실행 결과