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. Java之String类的使用细节

    String类的特点:     字符串对象一旦被初始化就不会被改变,字符串存储在字符串常量池中(字符串缓冲区).如果池中没有就创建,如果有就直接拿过来用.  代码验证如下:     String s ...

  2. ios背景更新和下载

    ios背景更新和下载 by 吴雪莹 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NS ...

  3. 数据泵expdp,impdp使用结

    EXPDP,IMPDP远程导出,导入数据库到本地 1.本地建立导出用户hr_exp并全然删除机hr的用户 C:\Users\Administrator>sqlplus / as sysdba S ...

  4. 设计模式之职责链模式(Chain of Responsibility)摘录

    23种GOF设计模式一般分为三大类:创建型模式.结构型模式.行为模式. 创建型模式抽象了实例化过程,它们帮助一个系统独立于怎样创建.组合和表示它的那些对象.一个类创建型模式使用继承改变被实例化的类,而 ...

  5. C# 通过扩展WebBrowser捕获网络连接错误信息

    想捕获WebBrowser连接指定网站过程中发生的错误信息,包括网络无法连接.404找不到网页等等错误!经过网上的搜集,找到了以下解决方案,该解决方案不会在网站连接前发出多余的测试请求. 向Webbr ...

  6. QT界面应用程序的语言国际化

    对字符串使用tr包含起来,因为tr是QObject的一个静态函数,所以它可以直接调用. 在生成language.ts文件之前应该编辑.pro文件,如下: QT += core gui greaterT ...

  7. C#用Open与Add方法打开word文档的区别

    C#打开word文档常用有两种方法:Add与Open. Microsoft.Office.Interop.Word._Document doc = (Document)appWord.Document ...

  8. .Net Framework基础知识

    .net常识 .net framework是微软为开发应用程序而创建的一个富有革命性的新平台:   .net可以用来开发windows应用程序,web应用程序,web服务和其它各种类型的程序.   . ...

  9. C#编程实践—EventBroker简单实现

    前言 话说EventBroker这玩意已经不是什么新鲜货了,记得第一次接触这玩意是在进第二家公司的时候,公司产品基础架构层中集成了分布式消息中间件,在.net基础服务层中使用EventBroker的模 ...

  10. SignalR 2.0 入门与提高

    SignalR 2.0 入门与提高 SignalR 2.0 最近整理了SignalR2.0 部分知识点,原文翻译,由于自己是土鳖,翻译得不好的地方,欢迎指正!仅供各位初学者学习! 第一节. 入门ASP ...