交通灯--第八篇

该博客介绍了如何设计一个十字路口的交通灯系统,包括线路划分、Road类的定义、车辆行驶线路的灯的设定以及交通灯管理类LampController。通过多线程技术模拟汽车到来、通过路口及交通灯变化的过程,涉及25个单独线程的使用。
摘要由CSDN通过智能技术生成

1、清楚十字路口的行驶线路
    每个十字路口都有12条行驶路线,直线方向有4条,右转弯4条,左转弯4条而右转弯是没有限制的,所以真正的只有8条线路是需要规定红绿灯的,可以把剩下的8条线路编成4组来依次通行相向直线行驶的划分为1组,这里有2组4条线路南北左转线路和东西左转线路可以各划分为单独的一组,这样4组线路非常安全,不会发生线路冲突,共放行四次循环一次,因此可将八条线路分为四组,每次通过一组,轮流通过。

2、定义Road类的时候,需要考虑的问题
为了更真实的模拟现实生活中的十字路口,在这个类中定义了一个成员变量,List集合,不停的移除0位置上的汽车

定义公路的构造方法
公路的构造方法接收一个字符串参数,这个参数用于表明是哪条行驶线路,

当公路一创建的时候,公路上就随机的来车,所以这里用到了多线程技术。
第一个单独线程用于模拟公路上来车
这个多线程里面循环1000次,用于模拟来了1000辆车,而每次来一辆车,就sleep一下,而且sleep的时间最好也定义成随机时间
第二个单独线程用于模拟汽车通过路口,汽车通过路口需要2个条件,一个是当前必须有等待的车,另一个条件是路灯必须是绿灯
虽然这2个线程是在一个构造方法里面,但因为是单独的线程,所以不会出现构造方法按顺序执行的问题

3、定义车辆行驶线路上的灯
因为行驶线路只有12条,所以这里定义成枚举类,用每个方向的第一个字母的代表线路,比如S2N,2就是to的意思,south to north 南向北
与S2N相对应的是N2S,这2

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值