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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pychram2022.01.13激活码_在线激活

    (pychram2022.01.13激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月31日
    56
  • docker高级教程_docker到底怎么用

    docker高级教程_docker到底怎么用一、基于Linux安装Docker1、下载关于Docker的依赖环境yum-yinstallyum-utilsdevice-mapper-persistent-datalvm22、设置镜像下载Docker的镜像源yum-config-manager–add-repohttp://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo3、安装Dockeryummakecachefastyum-yinstall

    2022年10月15日
    2
  • html5 canvas雨点打到窗玻璃动画

    html5canvas雨点打到窗玻璃动画HTML5下雨效果效果预览:http://hovertree.com/texiao/html5/4.htm以下是代码:1234567HTML5

    2021年12月21日
    43
  • 动漫推荐新番_有深度的番剧

    动漫推荐新番_有深度的番剧已搬迁至"github平台",此处不再更新!!!版权所有,不允许转载,图片侵删按喜欢的顺序递减排列命运石之门科幻/剧情/爱情【内容介绍】“这一切都是命运石之门的选择

    2022年8月1日
    7
  • 离心泵CAE_2_ICEM剖分网格_2_叶轮流道[通俗易懂]

    离心泵CAE_2_ICEM剖分网格_2_叶轮流道[通俗易懂]针对本科毕设中所涉及到的离心泵数值分析和性能计算,将用最简单粗暴的方法,讲解如何基于CFturbo、ICEM、FLUENT来开展离心泵水力设计和性能分析的计算机辅助(CAE)实现。离心泵的水力设计由CFturbo软件实现;网格剖分由ICEM软件实现;CFD数值计算由FLUENT软件实现;并验证设计值是否达到。这里是第二部分,ICEM软件实现离心泵过流通道的网格剖分,含叶轮流道、进口延伸段、蜗壳流道的网格剖分。由于三个流道分开来划分网格,所以分三部分来分别讲解,这里是第2篇,叶轮流道的网格剖分……

    2022年5月26日
    47
  • vue基础教程总结篇,用最短的时间入门vue.js(持续更新…)

    vue基础教程总结篇,用最短的时间入门vue.js(持续更新…)目前,vue已经成为前端工程师必会的框架之一,这里简单总结一下,可以让您快速的入门vue,师傅带进门,修行靠个人,最主要的还是自己多动手,多实践,本专栏会持续更新。1.vue安装教程及简介2.vue计算属性computed与监听属性watch的基本使用3.Vue组件及自定义事件4.Vue过渡&动画&混入5.Vue路由的基本使用6.vue中Ajax(axios)及Ajax(vue-resource)的使用方法7.vues响应接口and实例8.vue目录.

    2022年6月4日
    32

发表回复

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

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