类嵌套_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;
}
}
类嵌套_list泛型_餐馆点菜例的更多相关文章
- 类spring ioc 泛型保留
类spring ioc 泛型保留 什么是泛型擦除 Java并不会传递泛型类,举个直观的栗子: @Component public class BaseProvider<T> { publi ...
- luogg_java学习_09_泛型_集合
这篇博客总结了半天,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 , 泛型 泛型介绍 1).类内部的属性的类型可以由外部决定: 2) ...
- 创建类模式(五):单例(Singleton)
定义 确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例. 单例模式一般情况下通过使用private的构造函数确保了在一个应用中只产生一个实例,并且是自行实例化. 和静态变量的区别 虽然 ...
- UML类图详解_关联关系_一对多
对于一对多的示例,可以想象一个账户可以多次申购.在申购的时候没有固定上限,下限为0,那么就可以使用容器类(container class)来搞,最常见的就是vector了. 下面我们来看一个“一对多” ...
- UML类图详解_关联关系_多对一
首先先来明确一个概念,即多重性.什么是多重性呢?多重性是指两个对象之间的链接数目,表示法是“下限...上限”,最小数据为零(0),最大数目为没有设限(*),如果仅标示一个数目级上下限相同. 实际在UM ...
- Sass--伪类嵌套
其实伪类嵌套和属性嵌套非常类似,只不过他需要借助`&`符号一起配合使用. a { &:link, &:visited { color: blue; } &:hover ...
- C#—泛型_推迟一切可以推迟的东西
泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性.泛型为.NET框架引入了类型参数(type parameters)的概念.类型参数使得设计类和方法时,不必确定一个或多个具 ...
- [工具类]DataTable与泛型集合List互转
写在前面 工作中经常遇到datatable与list,对于datatable而言操作起来不太方便.所以有的时候还是非常希望通过泛型集合来进行操作的.所以这里就封装了一个扩展类.也方便使用. 类 方法中 ...
- Gson解析POJO类中的泛型参数
在开发Android与API交互的时候,使用Json格式传输,遇到了这样一个情况,返回数据格式POJO类如下: public class ApiResult<T> { private in ...
随机推荐
- 用Python玩转微信
Python玩转微信 大家每天都在用微信,有没有想过用python来控制我们的微信,不多说,直接上干货! 这个是在 itchat上做的封装 http://itchat.readthedocs.io ...
- 2019南昌网络赛I:Yukino With Subinterval(CDQ) (树状数组套主席树)
题意:询问区间有多少个连续的段,而且这段的颜色在[L,R]才算贡献,每段贡献是1. 有单点修改和区间查询. 思路:46min交了第一发树套树,T了. 稍加优化多交几次就过了. 不难想到,除了L这个点, ...
- 04-cmake语法-STREQUAL
STREQUAL 用于比较字符串,相同返回 true .
- Python进阶-III 函数装饰器(Wrapper)
1.引入场景: 检查代码的运行时间 import time def func(): start = time.time() time.sleep(0.12) print('看看我运行了多长时间!') ...
- IComparable<T>.CompareTo(T) 方法
IComparable<T>.CompareTo(T) 方法 定义 命名空间: System 程序集: System.Runtime.dll, mscorlib.dll, netstand ...
- celery异步任务、定时任务
阅读目录 一 什么是Celery? 二 Celery的使用场景 三 Celery的安装配置 四 Celery异步任务 五Celery定时任务 六在Django中使用Celery 一 什么是Cele ...
- springMVC学习2
参数绑定 默认支持的参数类型 @Override public Item queryItemById(int id) { Item item = this.itemMapper.selectByPri ...
- axios post方式请求x-ww格式的数据
//使用axios时,要确定是json格式还是x-www格式的,axios默认是json格式的,如果是x-ww格式需要做如下配置: let url = "/hehe/site/getcomm ...
- selenium--单选框和复选框的操作
单选框操作 from selenium import webdriver import unittest class Test_radio(unittest.TestCase): def test_S ...
- 虚方法(virtual)\抽象方法(abstract)\接口(interface)的区别
转自:https://www.cnblogs.com/fantaohaoyou/p/9402657.html 虚方法和抽象方法都可以供派生类重写,它们之间有什么区别呢? 1. 虚方法必须有实现部分,抽 ...