1、方法,需要一个年份,一个月份。然后在控制台输出日历

 // 输入一个年份和一个月份显示日历
public static void printCalendar(int year, int month) {
// 转换日期
Calendar calendar = Calendar.getInstance();
// 找到月份第一天
calendar.set(year, month-1, 1);
// 找到第一天是周几 1 周日 2 周一
int week = calendar.get(Calendar.DAY_OF_WEEK);
//System.out.println("week: "+week);
// 获取最大日期
int dayMax = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
// 循环输出
System.out.println("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六\t");
// 若第一天不为周日
if(week != 1) {
// 判断01是周几 空格
for(int j = 1;j < week;j++) {
System.out.print(" \t");
}
}
// 循环
for (int i = 1; i <= dayMax; i++) {
// 找到第 i 天
calendar.set(year, month-1, i);
// 第 i 天是周几
int wek = calendar.get(Calendar.DAY_OF_WEEK);
System.out.print(i + "\t");
// 周六回车
if ( wek == 7) {
System.out.println();
} }
}

2、MainTest测试类

 public static void main(String[] args) {
// 万年历测试类
Scanner scanner = new Scanner(System.in);
boolean isTrue = true;
while(isTrue) {
System.out.println("-------------万年历------------");
System.out.println("1、查看日历");
System.out.println("0、退出");
int key = scanner.nextInt();
switch (key) {
case 1:
System.out.println("请输入年份:");
int year = scanner.nextInt();
System.out.println("请输入月份:");
int month = scanner.nextInt();
PerpetualCalendar.printCalendar(year, month);
System.out.println();
break;
default:
isTrue = false;
break;
}
}
System.out.println("已退出系统...");
}

3、运行结果:

  有帮助,就点个推荐吧,让更多人看到

Java_万年历(简单)的更多相关文章

  1. 火狐浏览器高度&制作简单万年历&弹出层

    浏览器高度: FireFox中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高 ...

  2. 用java进行简单的万年历编写

    import java.util.Scanner; public class PrintCalendarDemo1 { public static void main(String[] args) { ...

  3. PHP实现简单的万年历

    <?php /*********************** *** 功能:万年历 *** *** 时间:2015/05/23 *** ***********************/ //1. ...

  4. java_反射_及其简单应用(2016-11-16)

    话不多说直接上代码 接口: package bean; /** * user接口 */ public interface User { public String getName(); public ...

  5. java_简单学习笔记

    java_study笔记 前言: 所有笔记均总结自狂神的java基础视频 https://www.bilibili.com/video/BV12J41137hu?p=1 idea小技巧 psvm+回车 ...

  6. Java_观察者模式(Observable和Observer) -转

    原文地址: Java_观察者模式(Observable和Observer) 一.观察者模式介绍    在Java中通过Observable类和Observer接口实现了观察者模式.一个Observer ...

  7. js万年历,麻雀虽小五脏俱全,由原生js编写

    对于前端来说,我们可能见到最多的就是各种各样的框架,各种各样的插件了,有各种各样的功能,比如轮播啊,日历啊,给我们提供了很大的方便,但是呢?我们在用别人这些写好的插件,框架的时候,有没有试着问一问自己 ...

  8. Java_基础篇(数组排序)

    Java_基础之数组排序(从小到大) 1.冒泡排序: 冒泡排序可以写成两层循环. 每次循环将最大的数值交换到数组的最后一个. 每排序完一次,后面就少比较一次.所以二层循环的判断条件写成:arry.le ...

  9. Java_框架面试题

    Java_框架面试题 欢迎来我Git上分享您的优秀建议 1.Spring框架分为哪七大模块,各模块的主要功能作用是什么? 七大模块,如下: 1. Spring Core: Core封装包是框架的最基础 ...

随机推荐

  1. Spring Cloud实践之服务注册与发现Eureka

    一.简述: 服务提供者producer与服务消费者consumer都注册到eureka server,然后服务consumer在其应用内直接调用producer的服务名来调用服务,而不是像之前一样调用 ...

  2. 给Ubuntu18.04安装mac os主题<转载>

     给Ubuntu18.04安装mac os主题 转载来自 https://www.cnblogs.com/feipeng8848(作者) 参考文献 https://linuxhint.com/gnom ...

  3. [CTSC2008]网络管理(整体二分+树剖+树状数组)

    一道经典的带修改树链第 \(k\) 大的问题. 我只想出三个 \(\log\) 的解法... 整体二分+树剖+树状数组. 那不是暴力随便踩的吗??? 不过跑得挺快的. \(Code\ Below:\) ...

  4. python 数据类型三 (字典)

    一.字典的介绍 字典(dict)是python中唯一的一个映射类型,它是以{}括起来的键值对组成,在dict中key是唯一的,在保存的时候,根据key来计算出一个内存地址,然后将key-value保存 ...

  5. html-文件上传设置accept类型延时问题

       今天在做文件上传时,采用了jQuery的upload插件,使用过程中发现了一个很有意思也很头疼的问题. 上传按钮,第一次点击时瞬间就可以打开文件选择框,之后再点击则需要等待恐怖的8s以上. 百度 ...

  6. 设计模式《JAVA与模式》之访问者模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述访问者(Visitor)模式的: 访问者模式是对象的行为模式.访问者模式的目的是封装一些施加于某种数据结构元素之上的操作.一旦这些操作需要 ...

  7. MyBatis框架介绍及其实操

    一.基本概念和介绍 数据持久化的概念 数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称.例如,文件的存储.数据的读取等都是数据持久化操作.数据模型可以是任何数据 ...

  8. K-means算法的原理、优缺点及改进(转)

    文章内容转载自:http://blog.csdn.net/sinat_35512245/article/details/55051306                                ...

  9. PHP的语言构造器

    isset和empty看起来像是函数,我们也经常把它当作函数一样使用,但是实际上,它们是语言构造器. php中的语言构造器就相当于C中的预定义宏的意思,它属于php语言内部定义的关键词,不可以被修改, ...

  10. Android中常见的对话框

    1. 普通对话框 public void click01(View view){ AlertDialog.Builder builder = new AlertDialog.Builder(this) ...