类嵌套_list泛型_餐馆点菜例

form1内容:

private void button1_Click(object sender, EventArgs e)

        {

            //声明并初始化一张点菜清单

            yiduicai danzi = new yiduicai();

            //声明并初始化第一个菜

            yigecai cai1 = new yigecai(3.6f, 2);

            //把第一个菜添加到点菜清单

            danzi.addcai(cai1);

            //声明并初始化第二个菜

            cai1 = new yigecai(9f, 1);

            //把第二个菜添加到点菜清单

            danzi.addcai(cai1);

            //输出清单中所有菜品总价

            MessageBox.Show(danzi.total_jiage().ToString());

        }

类“一个菜”

//一个菜,模拟餐馆点菜时客人每一次报出菜名的单价和数量

    class yigecai

    {

        float dj;//菜品单价

        int sl;//菜品数量

        //构造函数,由单价和数量初始化属性(字段)

        public yigecai(float price,int count)

        {

            dj = price;

            sl = count;

        }

        //由数量和单价,计算当前菜品的价格

        public float jiage()

        {

            return dj * sl;

        }

    }

//类“一堆菜”

//一堆菜,模拟餐馆点餐时统计下来的完整的点菜清单

    class yiduicai

    {

        List<yigecai> cais = new List<yigecai>();//点菜清单列表

        //加菜方法,用于把确认的菜品添加进清单

        public void addcai(yigecai cai)

        {

            cais.Add(cai);

        }

        //计算总价方法,用于获取所有菜品价格

        public float total_jiage()

        {

            float sum=0;

            for (int i = 0; i <cais.Count; i++)

            {

                sum += cais[i].jiage();//调用“yigecai”这个类的价格计算方法

            }

            return sum;

        }

    }

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容