首页 > 其他分享 >7-3 创建一个倒数计数线程

7-3 创建一个倒数计数线程

时间:2024-10-13 19:18:55浏览次数:10  
标签:倒数 Thread int 计数 num 线程 new public

创建一个倒数计数线程。要求:1.该线程使用实现Runnable接口的写法;2.程序该线程每隔0.5秒打印输出一次倒数数值(数值为上一次数值减1)。

输入格式:

N(键盘输入一个整数)

输出格式:

每隔0.5秒打印输出一次剩余数

输入样例:

6

输出样例:

在这里给出相应的输出。例如:

6
5
4
3
2
1
0

代码实现区: 

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        sc.close();

        PrintNum p = new PrintNum();
        p.setNum(N);
        Thread t = new Thread(p);
        t.start();
    }
}

class PrintNum implements Runnable{
    private int num;
    public void setNum(int n) {
        this.num=n;
    }
    @Override
    public void run() {
        for(int i=num;i>=0;i--) {
            System.out.println(i);
            try {
                Thread.sleep(500);
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }
        }
    }
}

标签:倒数,Thread,int,计数,num,线程,new,public
From: https://blog.csdn.net/GZH_mxjx/article/details/142902726

相关文章

  • FairSync extends Sync 线程抢锁分析4
    直接代码中分析staticfinalclassFairSyncextendsSync{privatestaticfinallongserialVersionUID=-3000897897090466540L;//争锁finalvoidlock(){acquire(1);}//来自父类AQS,我直接贴过来这边,下面分析的时候同样会这样......
  • day12-多线程
    day10-多线程一、多线程常用方法下面我们演示一下getName()、setName(Stringname)、currentThread()、sleep(longtime)这些方法的使用效果。publicclassMyThreadextendsThread{publicMyThread(Stringname){super(name);//1.执行父类Thread(Stringname......
  • day11-特殊文件、日志技术、多线程
    day11-特殊文件、日志技术、多线程一、属性文件1.1特殊文件概述同学们,前面我们学习了IO流,我们知道IO流是用来读、写文件中的数据。但是我们接触到的文件都是普通的文本文件,普通的文本文件里面的数据是没有任何格式规范的,用户可以随意编写,如下图所示。像这种普通的文本文件,没......
  • c#线程同步&线程安全
    一:线程同步由于现代计算机CPU的多线程技术普及,所有的资源访问都要面临一个问题:在多线程情况下,如何有序访问资源?为此,线程同步技术应运而生。线程同步的技术分三类:1.排它锁:排它锁,顾名思义,独占(资源)、排他(其他线程或者进程)。排它锁每一次只允许一个线程执行特定的活动或者代码。其......
  • 【JavaEE】【多线程】进程与线程的概念
    目录一、进程1.1系统管理进程1.2系统操作进程1.3进程控制块PCB关键属性1.4cpu对进程的操作1.5进程调度二、线程2.1线程与进程2.2线程资源分配2.3线程调度三、线程与进程区别四、线程简单操作代码4.1创建线程4.1.1start()与run()区别4.2查看线程一、进......
  • 【JavaEE】【多线程】Thread类讲解
    目录一、Thread构造方法二、Thread的常见属性三、创建一个线程四、获取当前线程引用五、终止一个线程5.1使用标志位5.2使用自带的标志位六、等待一个线程七、线程休眠八、线程状态九、线程安全9.1线程不安全原因总结9.2解决由先前线程不安全问题例子一、Thre......
  • 2024java最新面试题-10张图!彻底搞定Java线程状态转换
    Java线程状态有几个?Java线程状态是如何转换?Java线程状态转换什么情况会进入锁的等待队列?Java线程状态转换什么情况会进入锁的同步队列?一提到Java线程状态,不少读者立马想到线程状态转换图,但细想,印象又不深刻,只记得有那么几个状态。再要你说出Java线程状态是如何转换的,脑子里......
  • C#线程---ThreadPool
    线程池的简介   为每个短暂的异步操作创建线程会产生显著的开销,线程池可以成功地适应于任何需要大量短暂的开销大的资源的情形。我们事先分配一定的资源,将这些资源放入到资源池。每次需要新的资源.只需从池中获取一个,而不用创建一个新的。当该资源不再被使用时,就将其返......
  • java 网络知识 + 多线程问题
    服务器:packagep1007;importjava.io.*;importjava.net.*;importjava.util.Random;publicclassServer{publicstaticvoidmain(String[]args){intport=12345;//服务端口try(ServerSocketserverSocket=newServerSocket(port)......
  • 利用线程池和网络动态库实现多人聊天室
    利用线程池和网络动态库实现多人聊天室概述本项目实现一个简单的多人聊天室,采用C语言编写,利用线程池和网络动态库,实现服务端消息转发和客户端消息接收。服务端服务端主要负责管理客户端连接,接收并转发消息。代码实现#include<stdio.h>#include<stdlib.h>#include......