有一个电影院正在上映大电影,共有100张票,有3个窗口进行售卖,请设计一个Java程序模拟该售卖系统!

本文主要是介绍有一个电影院正在上映大电影,共有100张票,有3个窗口进行售卖,请设计一个Java程序模拟该售卖系统!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实现思路:

package 卖票;
class sale1 implements Runnable{int tiket=100;private Object object=new Object();public void run() {synchronized(object) {while(tiket>0) {if (tiket>1) {try {Thread.sleep(100);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}tiket--;System.out.println(Thread.currentThread().getName()+"窗口售出一张电影票,目前还有"+tiket+"张电影票");}else {System.out.println("电影票已经出售完毕!");try {Thread.sleep(100000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}}}
public class index {public static void main(String[] args) {sale1 h1=new sale1();Thread H1=new Thread(h1,"第一个");Thread H2=new Thread(h1,"第二个");Thread H3=new Thread(h1,"第三个");H1.start();H2.start();H3.start();}}

运行结果:

第一个窗口售出一张电影票,目前还有99张电影票
第一个窗口售出一张电影票,目前还有98张电影票
第一个窗口售出一张电影票,目前还有97张电影票
第一个窗口售出一张电影票,目前还有96张电影票
第一个窗口售出一张电影票,目前还有95张电影票
第一个窗口售出一张电影票,目前还有94张电影票
第一个窗口售出一张电影票,目前还有93张电影票
第一个窗口售出一张电影票,目前还有92张电影票
第一个窗口售出一张电影票,目前还有91张电影票
第一个窗口售出一张电影票,目前还有90张电影票
第一个窗口售出一张电影票,目前还有89张电影票
第一个窗口售出一张电影票,目前还有88张电影票
第一个窗口售出一张电影票,目前还有87张电影票
第一个窗口售出一张电影票,目前还有86张电影票
第一个窗口售出一张电影票,目前还有85张电影票
第一个窗口售出一张电影票,目前还有84张电影票
第一个窗口售出一张电影票,目前还有83张电影票
第一个窗口售出一张电影票,目前还有82张电影票
第一个窗口售出一张电影票,目前还有81张电影票
第一个窗口售出一张电影票,目前还有80张电影票
第一个窗口售出一张电影票,目前还有79张电影票
第一个窗口售出一张电影票,目前还有78张电影票
第一个窗口售出一张电影票,目前还有77张电影票
第一个窗口售出一张电影票,目前还有76张电影票
第一个窗口售出一张电影票,目前还有75张电影票
第一个窗口售出一张电影票,目前还有74张电影票
第一个窗口售出一张电影票,目前还有73张电影票
第一个窗口售出一张电影票,目前还有72张电影票
第一个窗口售出一张电影票,目前还有71张电影票
第一个窗口售出一张电影票,目前还有70张电影票
第一个窗口售出一张电影票,目前还有69张电影票
第一个窗口售出一张电影票,目前还有68张电影票
第一个窗口售出一张电影票,目前还有67张电影票
第一个窗口售出一张电影票,目前还有66张电影票
第一个窗口售出一张电影票,目前还有65张电影票
第一个窗口售出一张电影票,目前还有64张电影票
第一个窗口售出一张电影票,目前还有63张电影票
第一个窗口售出一张电影票,目前还有62张电影票
第一个窗口售出一张电影票,目前还有61张电影票
第一个窗口售出一张电影票,目前还有60张电影票
第一个窗口售出一张电影票,目前还有59张电影票
第一个窗口售出一张电影票,目前还有58张电影票
第一个窗口售出一张电影票,目前还有57张电影票
第一个窗口售出一张电影票,目前还有56张电影票
第一个窗口售出一张电影票,目前还有55张电影票
第一个窗口售出一张电影票,目前还有54张电影票
第一个窗口售出一张电影票,目前还有53张电影票
第一个窗口售出一张电影票,目前还有52张电影票
第一个窗口售出一张电影票,目前还有51张电影票
第一个窗口售出一张电影票,目前还有50张电影票
第一个窗口售出一张电影票,目前还有49张电影票
第一个窗口售出一张电影票,目前还有48张电影票
第一个窗口售出一张电影票,目前还有47张电影票
第一个窗口售出一张电影票,目前还有46张电影票
第一个窗口售出一张电影票,目前还有45张电影票
第一个窗口售出一张电影票,目前还有44张电影票
第一个窗口售出一张电影票,目前还有43张电影票
第一个窗口售出一张电影票,目前还有42张电影票
第一个窗口售出一张电影票,目前还有41张电影票
第一个窗口售出一张电影票,目前还有40张电影票
第一个窗口售出一张电影票,目前还有39张电影票
第一个窗口售出一张电影票,目前还有38张电影票
第一个窗口售出一张电影票,目前还有37张电影票
第一个窗口售出一张电影票,目前还有36张电影票
第一个窗口售出一张电影票,目前还有35张电影票
第一个窗口售出一张电影票,目前还有34张电影票
第一个窗口售出一张电影票,目前还有33张电影票
第一个窗口售出一张电影票,目前还有32张电影票
第一个窗口售出一张电影票,目前还有31张电影票
第一个窗口售出一张电影票,目前还有30张电影票
第一个窗口售出一张电影票,目前还有29张电影票
第一个窗口售出一张电影票,目前还有28张电影票
第一个窗口售出一张电影票,目前还有27张电影票
第一个窗口售出一张电影票,目前还有26张电影票
第一个窗口售出一张电影票,目前还有25张电影票
第一个窗口售出一张电影票,目前还有24张电影票
第一个窗口售出一张电影票,目前还有23张电影票
第一个窗口售出一张电影票,目前还有22张电影票
第一个窗口售出一张电影票,目前还有21张电影票
第一个窗口售出一张电影票,目前还有20张电影票
第一个窗口售出一张电影票,目前还有19张电影票
第一个窗口售出一张电影票,目前还有18张电影票
第一个窗口售出一张电影票,目前还有17张电影票
第一个窗口售出一张电影票,目前还有16张电影票
第一个窗口售出一张电影票,目前还有15张电影票
第一个窗口售出一张电影票,目前还有14张电影票
第一个窗口售出一张电影票,目前还有13张电影票
第一个窗口售出一张电影票,目前还有12张电影票
第一个窗口售出一张电影票,目前还有11张电影票
第一个窗口售出一张电影票,目前还有10张电影票
第一个窗口售出一张电影票,目前还有9张电影票
第一个窗口售出一张电影票,目前还有8张电影票
第一个窗口售出一张电影票,目前还有7张电影票
第一个窗口售出一张电影票,目前还有6张电影票
第一个窗口售出一张电影票,目前还有5张电影票
第一个窗口售出一张电影票,目前还有4张电影票
第一个窗口售出一张电影票,目前还有3张电影票
第一个窗口售出一张电影票,目前还有2张电影票
第一个窗口售出一张电影票,目前还有1张电影票
电影票已经出售完毕!

这篇关于有一个电影院正在上映大电影,共有100张票,有3个窗口进行售卖,请设计一个Java程序模拟该售卖系统!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/750393

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java AOP面向切面编程的概念和实现方式

《JavaAOP面向切面编程的概念和实现方式》AOP是面向切面编程,通过动态代理将横切关注点(如日志、事务)与核心业务逻辑分离,提升代码复用性和可维护性,本文给大家介绍JavaAOP面向切面编程的概... 目录一、AOP 是什么?二、AOP 的核心概念与实现方式核心概念实现方式三、Spring AOP 的关

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

Java中的.close()举例详解

《Java中的.close()举例详解》.close()方法只适用于通过window.open()打开的弹出窗口,对于浏览器的主窗口,如果没有得到用户允许是不能关闭的,:本文主要介绍Java中的.... 目录当你遇到以下三种情况时,一定要记得使用 .close():用法作用举例如何判断代码中的 input