java 打印日历
简介
示例代码
Result
Mon Tue Wed Thu Fri Sat Sun
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23* 24 25 26
27 28 29 30 31
和 windows 里面的完全一致
简要分析
package test1;
import java.time.*;
public class CalendarTest {
public static void main(String[] args){
LocalDate date = LocalDate.now(); // 得到当前时间
int month = date.getMonthValue(); // 得到当前月份
int today = date.getDayOfMonth(); // 得到当前日期是这个月的第几天
date = date.minusDays(today - 1); // 得到当前月份的第一天
DayOfWeek weekday = date.getDayOfWeek(); // 得到当前月份第一天是第几周
int value = weekday.getValue(); // 得到当前月份第一天是这一周的第几天
System.out.println("Mon Tue Wed Thu Fri Sat Sun");
for(int i=1; i<value; i++){
System.out.print(" "); // 打印前置 空格
}
while(date.getMonthValue() == month){
System.out.printf("%3d", date.getDayOfMonth()); // 输出从这个月的第一天到这个月的月底
if(date.getDayOfMonth() == today) { //如果是当前日期的话输出一个*
System.out.print("*");
}else{
System.out.print(" ");
}
date = date.plusDays(1); // date++
if(date.getDayOfWeek().getValue() == 1) System.out.println();// 得到第一天换行
}
if (date.getDayOfWeek().getValue() != 1) System.out.println(); // 得到月末 换行
}
}
java 打印日历的更多相关文章
- 使用java 打印日历
package hangshu; /* * 打印从1900年到2.year年的日历 */ import java.util.Scanner; public class Calender { publi ...
- java打印日历
打个日历,写了半天,感情水平真菜, 不过主要是不会数组,明天一定要把数组看了 package demo; import java.util.Scanner; public class Demo { / ...
- 用java打印日历
来自<java核心技术卷一> /** * Created by wangbin10 on 2019/1/3. * 打印当月日历 */ public class CalendarTest { ...
- Python学习实践-----打印日历
使用python语言实现在控制台打印日历 输入年.月.日 输出对应日历,指定的日数输出为'--' 程序没有做严格的输入验证,故输入整数即可. 以下为没有优化的源码: print_calendar.py ...
- Java 打印金字塔 or 打印带数字的金字塔 (Java 学习中的小记录)
Java 打印金字塔 or 打印带数字的金字塔 (Java 学习中的小记录) 作者:王可利(Star·星星) 效果图: 代码如下: class Star8 { public static void m ...
- 关于这两天研究Java打印pdf方法的记录
这两天在研究Java调用打印机打印PDF文件的方法,学到了不少东西,特别来记录一下. 关于Java打印网上最多的而且也是Java正统的打印方法就是使用PrintService,一套比較标准的打印代码例 ...
- java打印正金字塔,倒金字塔和“水影”金字塔
java打印正金字塔,倒金字塔和"水影"金字塔 --------原创文章,若要转载,请注明出处 小小少年 闲来无事,想起自己初学java的时候做的经典的无非就是打印出一些有意思 ...
- Java打印
Java打印 import java.awt.Color; import java.awt.Font; import java.awt.FontMetrics; import java.awt.Gra ...
- Oracle打印日历功能
Oracle用SQL打印日历 1.1 打印当月日历 , D, NULL)) SUN, , D, NULL)) MON, , D, NULL)) TUE, , D, NULL)) WED, , D, ...
- Java 打印程序设计实例
3.1 打印文本 3.1.1 应用场景 假设我们需要打印一个窗体的某个文本编辑域(可能只有几行,也可能包含多页)的内容,并且每页最多打印 54 行,如何实现呢? 3.1.2 解决方法 基本思路如下:首 ...
随机推荐
- 魔方求解器桌面版(层先法,基于Tauri实现)
开发了一个桌面版的三阶魔方求解器,代码地址:https://github.com/davelet/rubik-cube-restore/pull/2 .欢迎使用. 一.层先法求解 代码逻辑是从前面的j ...
- Web客户端开发
Web开发工具 从高层次来看,可以将客户端工具放入以下三大类需要解决的问题中: 安全网络 - 在代码开发期间有用的工具. 转换 - 以某种方式转换代码的工具,例如将一种中间语言转换为浏览器可以理解的 ...
- Mybatis 框架课程第四天
目录 1 Mybatis 延迟加载策略 1.1 何为延迟加载 1.2 实现需求 1.3 使用 assocation 实现延迟加载 1.3.1 账户的持久层 DAO 接口 1.3.2 账户的持久层映射文 ...
- 【UEFI】DXE阶段从概念到代码
总述 DXE(Driver Execution Environment)阶段,是执行大部分系统初始化的阶段,也就是说是BIOS发挥作用,初始化整个主板的主战场.在这个阶段我们可以进行大量的驱动工作. ...
- TVM: VisitExpr流程分析
TVM源码中涉及到表达式遍历的地方,一般是适用VisitExpr接口进行,这个接口设计TVM的visitor模式,具体分析可参考:TVM:visitor设计模式 基类tvm::relay::ExprF ...
- docker容器安装TensorFlow_gpu 版本遇到的坑。。。
运行并挂载docker镜像 docker run -it -v E:/workspace/docker:/dl -p 8888:8888 8d78dd1e1b64 /bin/bash 安装jupyte ...
- Manim:动画制作背后的魔法
Manim是一个强大的数学动画制作库,它能够帮助我们创建出令人惊叹的动画,无论是用于教学还是娱乐. 不过,对于初学者来说,Manim的内部工作机制可能显得有些复杂. 本文将从整体上简单介绍Manim的 ...
- C#结构体布局规则
以下两个结构体,虽然字段完全一模一样,但因为Pack方式不同,导致它们实际占用内存大小是不一样的! [StructLayout(LayoutKind.Sequential,Pack =1)]//无填充 ...
- 古剑山misc01与02详解
古剑山misc01与02详解 蓝书包 下载附件有182个加密压缩包 ,开始没有思路挑一两个尝试爆破看看 这样密码就有点明了了,压缩包的命名为1.zip到182.zip,密码10001到10182正好对 ...
- Longest Univalue Path——LeetCode进阶路
原题链接https://leetcode.com/problems/longest-univalue-path 题目描述 Given a binary tree, find the length of ...