Java液晶数字字体显示当前时间[通俗易懂]

Java液晶数字字体显示当前时间[通俗易懂]Java液晶数字字体显示当前时间importjava.text.SimpleDateFormat;importjava.util.ArrayList;importjava.util.Date;importjava.util.HashMap;importjava.util.List;importjava.util.Map;/****@authorzdy…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

Java液晶数字字体显示当前时间

在这里插入图片描述
在这里插入图片描述

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * 
 * @author zdy 
 * @version 2019年3月11日16:03:12
 */
public class PrintDate {
  private final static String[][] parr = {
            {" ","-","-"," "," ","-","-"," "," "," ","-","-"," "," ","-","-"," "},
            {"|"," "," ","|","|"," "," ","|",".","|"," "," ","|","|"," "," ","|"},
            {" ","-","-"," "," ","-","-"," "," "," ","-","-"," "," ","-","-"," "},
            {"|"," "," ","|","|"," "," ","|",".","|"," "," ","|","|"," "," ","|"},
            {" ","-","-"," "," ","-","-"," "," "," ","-","-"," "," ","-","-"," "}};
    
    public static void main(String[] args) throws InterruptedException {
        Thread t = new Thread(new Runnable() {
            
            @Override
            public void run() {
                while(true) {
                    try {
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    print(parr);
                }
            }
        });
        t.start();
        t.join(0);
    }
    
    private static void print(String[][] arr) {
        Map<Integer,List<Integer>> m =  getDateArr();
        for (int i = 0; i < arr.length; i++) {
            List<Integer> indexs = m.get(i);
            for (int l = 0; l < arr[i].length; l++) {
                boolean flag = false;
                for (Integer index : indexs) {
                    if(index == l) {
                        flag = true;
                        break;
                    }
                }
                try {
                    Thread.sleep(1);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                if(!flag) {
                    System.out.print(arr[i][l]);
                } else {
                    System.err.print(arr[i][l]);
                }
            }
            System.out.println();
        }
    }
    
    private static Map<Integer,List<Integer>> getDateArr(){
        Map<Integer,List<Integer>> m = new HashMap<>();
        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
        String currentTime = sdf.format(new Date());
        System.out.println(currentTime);
        String[] time = currentTime.split(":");
        String[] hour = time[0].split("");
        for (int i = 0; i < hour.length; i++) {
            Map<Integer, List<Integer>> tmp = getDateArrD(Integer.valueOf(hour[i]), i,0);
            if(!tmp.isEmpty()) {
                tmp.keySet().forEach(key -> {
                    List<Integer> list = m.get(key);
                    if(list ==null || list.size() <= 0) {
                        m.put(key, tmp.get(key));
                    } else {
                        list.addAll(tmp.get(key));
                        m.put(key, list);
                    }
                });
            }
        }
        String[] minute = time[1].split("");
        for (int i = 0; i < minute.length; i++) {
            Map<Integer, List<Integer>> tmp = getDateArrD(Integer.valueOf(minute[i]), i+2,1);
            if(!tmp.isEmpty()) {
                tmp.keySet().forEach(key -> {
                    List<Integer> list = m.get(key);
                    if(list ==null || list.size() <= 0) {
                        m.put(key, tmp.get(key));
                    } else {
                        list.addAll(tmp.get(key));
                        m.put(key, list);
                    }
                });
            }
        }
        return m;
    }
    
    private static Map<Integer,List<Integer>> getDateArrD(int num,int index,int n){
        Map<Integer,List<Integer>> m = new HashMap<>();
        List<Integer> n1 = null;
        switch(num) {
            default:
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);
                
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                n1.add(3+index*4+n);
                m.put(1, n1);
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(3+index*4+n);
                m.put(3, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(4, n1);
                return m;
            case 1:
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(3, n1);
                return m;
            case 2:
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);
                
                n1 = new ArrayList<>();
                n1.add(4+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(2, n1);
                
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                m.put(3, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(4, n1);
                return m;
            case 3:
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);
                
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(2, n1);
                
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(3, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(4, n1);
                return m;
                
            case 4:
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                n1.add(3+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(2, n1);
                
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(3, n1);
                return m;
            case 5:
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);
                
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(2, n1);
                
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(3, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(4, n1);
                return m;
            case 6:
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(2, n1);
                
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                n1.add(3+index*4+n);
                m.put(3, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(4, n1);
                return m;
            
            case 7:
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);

                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(3, n1);
                return m;
            case 8:
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);
                
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                n1.add(3+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(2, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(3+index*4+n);
                m.put(3, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(4, n1);
                return m;
            case 9:
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(0, n1);
                
                n1 = new ArrayList<>();
                n1.add(0+index*4+n);
                n1.add(3+index*4+n);
                m.put(1, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(2, n1);
                
                n1 = new ArrayList<>();
                n1.add(3+index*4+n);
                m.put(3, n1);
                
                n1 = new ArrayList<>();
                n1.add(1+index*4+n);
                n1.add(2+index*4+n);
                m.put(4, n1);
                return m;
        }
    }
}

Jetbrains全家桶1年46,售后保障稳定

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223014.html原文链接:https://javaforall.net

(0)
上一篇 2025年6月30日 下午7:43
下一篇 2025年6月30日 下午8:15


相关推荐

  • 做一个电商网站需要多少钱

    做一个电商网站需要多少钱做一个电商网站详细成本一、域名费用:有些的顶级域名非常贵,但如果需要搭建一个好的商城,那么域名也要最好的,因此,域名的成本非常高。

    2026年4月15日
    5
  • MySQL添加、修改、删除索引以及索引的使用场景

    MySQL添加、修改、删除索引以及索引的使用场景索引是查询优化最主要的方式 查询方式 一种是 全表扫描 一种是 利用数据表上建立的所以进行扫描 1 索引类型分类 UNIQUE 唯一索引 不可以出现相同的值 可以有 NULL 值 加快查询速度 并且可以限制列值的唯一性 允许为空 唯一索引包括联合唯一索引 多列形成的唯一索引 这些列可以唯一确定一条表记录 可以为空 INDEX 普通索引 允许出现相同的索引内容 加快查询速度 PROMARYKEY 主键索引 不允许出现相同的值 主键

    2026年3月17日
    2
  • 荔枝派linux安装python,GPIO · 荔枝派Zero指南 · 看云

    荔枝派linux安装python,GPIO · 荔枝派Zero指南 · 看云GPIO 操作本文讲述 linux 下 用户空间的 GPIO 操作的常规方法和 python 脚本操作的方法文件 IO 方式操作 GPIO 编号及复用功能在 Linux 中 GPIO 使用 0 MAX INT 之间的整数标识 对于 32 位 CPU 每组 GPIO32 个 引脚号就是按顺序排列 LicheePiZero 的所有 IO 的复用功能及 GPIO 标识号为 gt 总共 52 个 IO 所有 IO 上电默认状态为高阻态

    2026年3月17日
    2
  • GlusterFS缺点分析

    GlusterFS缺点分析原文 http blog sina com cn s blog 6b89db7a0101 htmlGlusterF GNUClusterFi 是一个开源的分布式文件系统 它的历史可以追溯到 2006 年 最初的目标是代替 Lustre 和 GPFS 分布式文件系统 经过八年左右的蓬勃发展 GlusterFS 目前在开源社区活跃度非常之高 这个后起之秀已经俨然与 Lustre

    2026年3月19日
    3
  • Qt调用谷歌翻译API

    Qt调用谷歌翻译API原理 模拟 Google 翻译网页请求 ps 频繁调用会封 IP 哦 QStringGoogl translateTex QStringtext QStringsourc QStringtarge QStringretSt QStringfinal m path client m client amp sl sourceLang amp tl targetLang amp dt t amp q

    2026年3月18日
    3
  • jsonify

    jsonifyflask提供了jsonify函数供用户处理返回的序列化json数据,而python自带的json库中也有dumps方法可以序列化json对象,那么在flask的视图函数中return它们会有什么不同之处呢?想必开始很多人和我一样搞不清楚,只知道既然框架提供了方法就用,肯定不会错。但作为开发人员,我们需要弄清楚开发过程中各种实现方式的特点和区别,这样在我们面对不同的需求时才能做出相对合理的选择,而…

    2022年5月10日
    55

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号