C#,《小白学程序》第六课:队列(Queue)的应用,《实时叫号系统》
医院里面常见的叫号系统怎么实现的?
1 文本格式
/// <summary>
/// 下面定义一个新的队列,用于演示《实时叫号系统》
/// </summary>
Queue<Classmate> q2 = new Queue<Classmate>();
/// <summary>
/// 《小白学程序》第六课:队列(Queue)的应用————《实时叫号系统》
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button6_Click(object sender, EventArgs e)
{
// #1 排队
int n = 8;
for (int i = 0; i < n; i++)
{
if (mates[i].Gender == "男")
{
q2.Enqueue(mates[i]);
}
}
// #2 启动《实时叫号系统》
// 每间隔2秒(2000毫秒)钟叫一个人
timer1.Interval = 2000;
// 给 true 是启动;给 false 就是停止!
timer1.Enabled = true;
}
/// <summary>
/// 《实时叫号系统》的运行
/// 本函数只有被“启动”才执行。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void timer1_Tick(object sender, EventArgs e)
{
// 当队列里面还有成员的时候;
if (q2.Count > 0)
{
// 显示第一位成员信息
Classmate m = q2.Dequeue();
webBrowser1.DocumentText = m.Id + " " + m.Name + ": " + m.Gender;
}
else
{
webBrowser1.DocumentText = "没人啦!";
}
}
2 代码格式
/// <summary>
/// 下面定义一个新的队列,用于演示《实时叫号系统》
/// </summary>
Queue<Classmate> q2 = new Queue<Classmate>();/// <summary>
/// 《小白学程序》第六课:队列(Queue)的应用————《实时叫号系统》
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button6_Click(object sender, EventArgs e)
{// #1 排队int n = 8;for (int i = 0; i < n; i++){if (mates[i].Gender == "男"){q2.Enqueue(mates[i]);}}// #2 启动《实时叫号系统》// 每间隔2秒(2000毫秒)钟叫一个人timer1.Interval = 2000;// 给 true 是启动;给 false 就是停止!timer1.Enabled = true;
}/// <summary>
/// 《实时叫号系统》的运行
/// 本函数只有被“启动”才执行。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void timer1_Tick(object sender, EventArgs e)
{// 当队列里面还有成员的时候;if (q2.Count > 0){// 显示第一位成员信息Classmate m = q2.Dequeue();webBrowser1.DocumentText = m.Id + " " + m.Name + ": " + m.Gender;}else{webBrowser1.DocumentText = "没人啦!";}
}
你非常幸运读到的是第一本真正的程序教程。

相关文章:
C#,《小白学程序》第六课:队列(Queue)的应用,《实时叫号系统》
医院里面常见的叫号系统怎么实现的? 1 文本格式 /// <summary> /// 下面定义一个新的队列,用于演示《实时叫号系统》 /// </summary> Queue<Classmate> q2 new Queue<Classmate>(); /// <summary> /// 《小白学程序》第…...
mysql profiling profiles profile
要想优化一条 Query,我们就需要清楚的知道这条 Query 的性能瓶颈到底在哪里,是消耗的 CPU计算太多,还是需要的的 IO 操作太多?要想能够清楚的了解这些信息,在 MySQL 5.0 和 MySQL 5.1正式版中已经可以非常容易做到了&a…...
ChatGPT AIGC 一个指令总结Python所有知识点
在ChatGPT中,直接输入一个指令就可以生成Python的所有知识点大纲。 非常实用的ChatGPT功能。 AIGC ChatGPT ,BI商业智能, 可视化Tableau, PowerBI, FineReport, 数据库Mysql Oracle, Office, Python ,ETL Excel 2021 实操,函数,图表,大屏可视化 案例实战 http://t.…...
【kubernetes】k8s部署OpenELB及在KubeSphere使用OpenELB
OpenELB 官网 https://openelb.io 本文内容学习于马士兵云原生课程 概述 OpenELB is an open-source load balancer implementation designed for bare-metal Kubernetes clusters. OpenELB是一个为裸机Kubernetes集群设计的开源负载均衡器实现。 In cloud-based Kubernetes cl…...
Android Native Code开发学习(三)对java中的对象变量进行操作
Android Native Code开发学习(三) 本教程为native code学习笔记,希望能够帮到有需要的人 我的电脑系统为ubuntu 22.04,当然windows也是可以的,区别不大 对java中的对象变量进行操作 首先我们新建一个java的类 pub…...
如何用bat文件调用与它在同一文件夹下的某个exe程序
第一个方案: 如果bat文件与某个exe程序在同一文件夹下的。那直接写那个 程序文件名字就行了。 两种写法。比如是 test.exe程序 一种 test.exe 二种 start test.exe 第一种批处理会等待test.exe程序执行完后才会运行下面的语句 第二种不会等待 这个写绝对路径好用 另…...
设计模式--单例模式(Singleton Pattern)
一、什么是单例模式 单例模式是一种创建型设计模式,它旨在确保一个类只有一个实例,并提供一个全局访问点来访问该实例。换句话说,单例模式限制了类的实例化次数为一个,并提供一种在应用程序中共享一个实例的方式。这对于需要只有…...
postgis数据库从一张表中过滤出一部分数据到新表中
你可以使用以下步骤在PostGIS数据库中过滤objectid<100的数据,并将其创建为新表:打开PostGIS数据库的终端或客户端工具(如Psql)。 选择你要过滤数据的表。假设表名为"original_table",该表包含一个名为&q…...
INDEMIND:“大+小”多机协同,实现机器人商用场景全覆盖
随着商用清洁机器人进入越来越多的场景中,单一的中型机器人并不能有效覆盖所有区域,更加细分化的产品组合正在成为新的趋势。 产品形态的“新趋势” 在商用场景中,目前的商用清洁机器人几乎均是中大型的产品形态,较大的体型意味…...
微信开发之一键创建标签的技术实现
简要描述: 添加标签 请求URL: http://域名地址/addContactLabel 请求方式: POST 请求头Headers: Content-Type:application/jsonAuthorization:login接口返回 参数: 参数名必选类型说明…...
八一参考文献:[八一新书]许少辉.乡村振兴战略下传统村落文化旅游设计[M]北京:中国建筑出版传媒,2022.
八一参考文献:[八一新书]许少辉.乡村振兴战略下传统村落文化旅游设计[M]北京:中国建筑出版传媒,2022....
ChatGPT⼊门到精通(7):GPT3.5与 4.0区别
⼀、详细区别 1 项⽬ GPT3.5 GPT4.0 2 打字速度 较慢,⾼峰期更慢 更加慢,差别不⼤ 3 掉线⼏率 经常掉线 很少掉线 4 分段能⼒ ⽣成⼏百字后就停⽌了, 需要回复“继续”,有时候不 是很连贯 基本连贯 5 使⽤限制 1⼩时100次提问&am…...
Springboot整合MyBatisPlus框架操作MySQL
1、MyBatis-Plus概述 MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 【技术储备】 拥有 Java 开发环境以及相应 IDE…...
基于Jenkins构建生产CICD环境(第二篇)
基于Jenkins自动打包并部署Tomcat环境 传统网站部署的流程 在运维过程中,网站部署是运维的工作之一。传统的网站部署的流程大致分为:需求分 析-->原型设计-->开发代码-->提交代码-->内网部署-->内网测试-->确认上线-->备份数据-->外网更新…...
ioctl、printk及多个此设备支持
一、ioctl操作实现 ioctl(Input/Output Control)是一个在 Unix-like 操作系统中的系统调用,用于控制设备或文件的各种操作。它允许用户空间程序与内核空间进行交互,执行一些特定的设备控制、状态查询或其他操作,而不必…...
电脑每次开机杀毒软件报iusb3mon.exe病毒已清除,电脑中病毒iusbmon杀毒办法,工具杀毒
不知道什么时候开始,我电脑C盘的系统数据存储文件夹programdata 不知不觉就没了,找不到了 programdata文件夹为存储系统数据文件的,这个文件不见了,而且我打开了显示隐藏文件和文件夹还是没有显示 然后我重启电脑,杀毒…...
centos服务器系统下安装python3并与自带的python2
centos服务器系统下安装python3并与自带的python2 在centos中,自带有python2,因此需要经常安装python3。但是这里有一个坑,就是centos的yum是用python2写的,如果正常编译安装python3,那么yum就会直接挂了。为了方便以…...
(二十)大数据实战——Flume数据采集的基本案例实战
前言 本节内容我们主要介绍几个Flume数据采集的基本案例,包括监控端口数据、实时监控单个追加文件、实时监控目录下多个新文件、实时监控目录下的多个追加文件等案例。完成flume数据监控的基本使用。 正文 监控端口数据 ①需求说明 - 使用 Flume 监听一个端口&am…...
AutoCAD图如何保存为Word
AutoCAD图如何保存为Word 引言AutoCAD图保存为Word文件步骤: 引言 不知道大家有没有是否遇到需要将AutoCAD图保存到Word中。有些小伙伴可能直接截图插入Word中,这种方法简单,但对于有高清图片需求的小伙伴就不适用了。接下来我就为大家介绍一…...
Java线程 - 详解(2)
一,线程安全问题 有些代码在单个线程的环境下运行,完全正确,但是同样的代码,让多个线程去执行,此时就可能出现BUG,这就是所谓的 "线程安全问题"。举一个例子: public class Demo {s…...
利用最小二乘法找圆心和半径
#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
conda相比python好处
Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理:…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...
dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
