1. 程式人生 > >2018-10-12 LIst泛型集合之使用者管理系統

2018-10-12 LIst泛型集合之使用者管理系統

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _2018_10_12_LIst泛型集合之使用者管理系統
{
    class User
    {
        public enum Sex
        {
            男=1,
            女=2
        }

        
        private string name;
        private int age;
        private string address;


        public string Name { get => name; set => name = value;}
        public int Age { get => age;set => age = value;}
        public Sex sex;
        public string Address
        {
            get => address; set => address = value;
        }

        public User(string name, int age, Sex sex, string address)
        {
            
            this.name = name;
            this.age = age;
            this.sex = sex;
            this.address = address;
        }

        public override string ToString()
        {
            return string.Format($" {name}  | {age}   | {sex}   | {address}\n");
        }

    }
}

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _2018_10_12_LIst泛型集合之使用者管理系統
{
    /// <summary>
    /// C((Controller)控制器層-用於處理邏輯
    /// </summary>
    class UserController
    {
        //例項一個User集合
        List<User> ListUser = new List<User>();
        

        /// <summary>
        /// 新增使用者方法
        /// </summary>

        public void AddUser(User user)
        {
            ListUser.Add(user);
        }

        /// <summary>
        /// 根據使用者編號刪除使用者
        /// </summary>
        public void RemoveUser(int index)
        {
            ListUser.RemoveAt(index);

        }

        /// <summary>
        /// 修改使用者
        /// </summary>
        public void ChangeUser(int index, string name, int age, User.Sex sex, string adrress)
        {
            ListUser[index].Name = name;
            ListUser[index].Age = age;
            ListUser[index].sex = sex;
            ListUser[index].Address = adrress;

        }


        /// <summary>
        /// 檢視使用者資料
        /// </summary>
        public void FindUser(int index)
        {
            Console.WriteLine("ID | 姓名 | 年齡 | 性別 | 地址\n");
            if (ListUser.Count == 0)
            {
                Console.WriteLine("使用者資料為空\n");
            }
            else
            {
                for (int i = 0; i < ListUser.Count; i++)
                {
                    Console.WriteLine( i+"  |"+ListUser[i]);
                }
            }
        }

        public int Count
        {
            get => ListUser.Count;
        }
    }
}

 

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _2018_10_12_LIst泛型集合之使用者管理系統
{
    /// <summary>
    /// V(View)檢視層-和使用者進行互動
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("**************************\n*******使用者管理系統*******\n**************************\n");

            UserController uc = new UserController();
            while (true)
            {
                Console.WriteLine("1.增加使用者\n2.刪除使用者\n3.修改使用者\n4.查詢使用者\n");

                Console.Write("請輸入數字:");
                string command = Console.ReadLine();
                Console.WriteLine();

                switch (command)
                {
                    case "1":
                        Console.Write("請輸入姓名:");
                        string name = Console.ReadLine();
                        Console.Write("請輸入年齡:");
                        int age = int.Parse(Console.ReadLine());
                        Console.Write("請選擇性別:1.男   2.女");
                        int sex =int.Parse(Console.ReadLine());
                        User.Sex _sex=User.Sex.男;

                        switch (sex)
                        {
                            case 1:

                                _sex = User.Sex.男;
                                break;
                            case 2:
                                _sex = User.Sex.女;
                                break;
                            default:
                                Console.WriteLine("輸入錯誤請重新輸入");
                                break;

                        }

                        Console.Write("請輸入地址:");
                        string address = Console.ReadLine();

                        uc.AddUser(new User(name, age, _sex, address));

                        break;
                    case "2":
                        uc.FindUser(0);
                        Console.WriteLine("請輸入需要刪除的使用者ID:");
                        int id = int.Parse(Console.ReadLine());
                        uc.RemoveUser(id);
                        break;
                    case "3":
                        uc.FindUser(0);
                        Console.WriteLine("請輸入需要修改的使用者ID:");
                        int _id = int.Parse(Console.ReadLine());

                        Console.Write("請輸入修改後的姓名:");
                        string Cname = Console.ReadLine();
                        Console.Write("請輸入修改後年齡:");
                        int Cage = int.Parse(Console.ReadLine());
                        Console.Write("請選擇性別:1.男   2.女");
                        int Csex = int.Parse(Console.ReadLine());
                        User.Sex _Csex = User.Sex.男;

                        switch (Csex)
                        {
                            case 1:

                                _Csex = User.Sex.男;
                                break;
                            case 2:
                                _Csex = User.Sex.女;
                                break;
                            default:
                                Console.WriteLine("輸入錯誤請重新輸入");
                                break;

                        }

                        Console.Write("請輸入新地址:");
                        string Caddress = Console.ReadLine();


                        uc.ChangeUser(_id,Cname,Cage,_Csex,Caddress);

                        break;
                    case "4":
                        uc.FindUser(0);
                        break;
                    default:
                        Console.WriteLine("輸入錯誤,請輸入正確的數字!");
                        break;
                }
            }


            //Console.WriteLine();
            


            Console.ReadKey();
        }
    }
}