import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar; public class MyDate { public static void main(String[] args) {
MyDate date = new MyDate(); Calendar calendar = Calendar.getInstance() ;
int month = calendar.get(Calendar.MONTH ) + 1 ;
calendar.set(Calendar.MONTH , month ) ;
date.myCalendar( calendar.getTime() ) ;
}
//实现日历的方法
public void myCalendar(Date date) {
GregorianCalendar now = new GregorianCalendar();
// 打印当前时间
// 设置当前时间
now.setTime(date);
// 从日期中取得当前的日
int toDay = now.get(Calendar.DAY_OF_MONTH);
// 从日期中取得当前的月
int month = now.get(Calendar.MONTH) ;
// 设置now的日期为1
now.set(Calendar.DAY_OF_MONTH, 1);
// 得到now是一周的第几天
int week = now.get(Calendar.DAY_OF_WEEK);
// 打印日历头部标示
System.out.println("日\t一\t二\t三\t四\t五\t六");
// 打印当前日期前面的空格
for (int i = Calendar.SUNDAY; i < week; i++) {
System.out.print("\t");
}
// 打印日历主体
while (now.get(Calendar.MONTH) == month) {
int day = now.get(Calendar.DAY_OF_MONTH);
// 对输出的日历进行对齐,小于10的加上一个空格
if (day < 10) {
// 如果是当前日期,加上标示
if (day == toDay) {
System.out.print("▲" + day + "▲\t");
} else {
System.out.print(" " + day + "\t");
}
} else {
// 如果是当前日期,加上标示
if (day == toDay) {
System.out.print("▲" + day + "▲\t");
} else {
System.out.print("" + day + "\t");
}
}
//如果是周六,进行换行
if (week == Calendar.SATURDAY) {
System.out.println();
}
//每次输出日期后,将日期增加一天
now.add(Calendar.DAY_OF_MONTH, 1);
//重新获得一周的第几天
week = now.get(Calendar.DAY_OF_WEEK);
}
} }

java输出万年历的更多相关文章

  1. Java之万年历

    @(文章目录) 二.Java之万年历 2.1 要求 输入年份: 输入月份: 输出某年某月的日历. 2.2 思路 实现从控制台接收年和月,判断是否是闰年(判断是否是闰年:能被4整除但不能被100整除:或 ...

  2. java 实现万年历

    曾经初学java写万年历,都是採用主要的算法求出是否闰年闰月 计算公式例如以下 int year = 2014, month = 8, total = 0; if (month == 1 || mon ...

  3. 【转】JAVA输出内容打印到TXT以及不同系统中如何换行

    JAVA输出内容打印到TXT以及不同系统中如何换行 http://xiyang.09.blog.163.com/blog/static/59827615201172552755293/ 2011-08 ...

  4. java输出双引号

    java输出双引号 直接看例子 //输出双引号 public class Test { public static void main(String[] args) { System.out.prin ...

  5. java输出一个目录下的子目录

    java输出一个目录下的子目录 package com.vfsd.core; import java.io.File; public class ListDir { public static voi ...

  6. PHP、Java输出json格式数据

      PHP 输出json. $result = mysql_query($sql); //查询结果 $users=array(); $i=0; while($row=mysql_fetch_array ...

  7. 通过java输出当前系统时间

    获取当前系统时间和日期并格式化输出: import java.util.Date; import java.text.SimpleDateFormat; public class NowString ...

  8. itextpdf JAVA 输出PDF文档

    使用JAVA生成PDF的时候,还是有些注意事项需要处理的. 第一.中文问题,默认的itext是不支持中文的,想要支持,需要做些处理. 1.直接引用操作系统的中文字体库支持,由于此方案限制性强,又绑定了 ...

  9. Java输出考试前三名

    实现输出考试成绩的前三名 要求: 1. 考试成绩已保存在数组 scores 中,数组元素依次为 89 , -23 , 64 , 91 , 119 , 52 , 73 2. 要求通过自定义方法来实现成绩 ...

随机推荐

  1. Cf 444C DZY Loves Colors(段树)

    DZY loves colors, and he enjoys painting. On a colorful day, DZY gets a colorful ribbon, which consi ...

  2. :link,:visited,:focus,:hover,:active详解

    原文::link,:visited,:focus,:hover,:active详解 CSS 又名 层叠样式表,所谓层叠,就是后面的样式会覆盖前面的样式,所以在样式表中,各样式排列的顺序很有讲究.   ...

  3. POJ Big Christmas Tree(最短的基础)

    Big Christmas Tree 题目分析: 叫你构造一颗圣诞树,使得 (sum of weights of all descendant nodes) × (unit price of the ...

  4. 几乎没用到过的css 样式

    1. :focus  选择器用于选取获得焦点的元素. 案例:http://www.w3school.com.cn/tiy/t.asp?f=css_sel_focus 2. clearfix清除浮动闭合 ...

  5. Android之LinkedHashMap实现LRU

    先看下LinkedHashMap的数据结构图 对于LinkedHashMap而言,它继承与HashMap.底层使用哈希表与双向链表来保存所有元素.其基本操作与父类HashMap相似,它通过重写父类相关 ...

  6. Lambda表达式、依赖倒置

    ASP.NET MVC学前篇之Lambda表达式.依赖倒置 ASP.NET MVC学前篇之Lambda表达式.依赖倒置 前言 随着上篇文章的阅读,可能有的朋友会有疑问,比如(A.Method(xxx= ...

  7. 动画操作 (Applying Animations) ngAnimate12

    动画操作 (Applying Animations) ngAnimate step 12 1.切换目录 git checkout step-12 npm start 2.效果图 这里在点击右边的缩略图 ...

  8. NET 类库

    NET 类库研究必备参考 扣丁格鲁 .NET 类库的强大让我们很轻松的解决常见问题,作为一个好专研的程序员,为了更上一层楼,研究CLR的基础类库实现是快速稳定的捷径. 一般场景下,采用 Reflect ...

  9. keepalive学习

    keepalive学习之软件设计 软件架构如下图所示: Keepalived 完全使用标准的ANSI/ISO C写出. 该软件主要围绕一个中央I/O复用分发器而设计,这个I/O复用分发器提供网络实时功 ...

  10. c# 如何显示图片指定位置

    private void panel1_Paint(object sender, PaintEventArgs e) { Rectangle r1 = new Rectangle(0, 0, 100, ...