Java-v8-v1ch04-CalendarTest 输出日历
来源:互联网 发布:数据公司 30亿 收购 编辑:程序博客网 时间:2024/05/22 20:28
//看了半天,发现java真麻烦,在这里做一个注释~,算法思路很简单,只是其中日历的某些用法,还不太习惯,呵呵~import java.text.DateFormatSymbols;import java.util.*;/** * @version 1.4 2007-04-07 * @author Cay Horstmann */public class CalendarTest{ public static void main(String[] args) { // construct d as current date GregorianCalendar d = new GregorianCalendar(); //当前日期日和月 int today = d.get(Calendar.DAY_OF_MONTH); int month = d.get(Calendar.MONTH); //首先把d设置到本月的第一天 // set d to start date of the month d.set(Calendar.DAY_OF_MONTH, 1); //本月第一天是周几 int weekday = d.get(Calendar.DAY_OF_WEEK); // get first day of week (Sunday in the U.S.) int firstDayOfWeek = d.getFirstDayOfWeek(); // determine the required indentation for the first line int indent = 0; while (weekday != firstDayOfWeek) { indent++; d.add(Calendar.DAY_OF_MONTH, -1); weekday = d.get(Calendar.DAY_OF_WEEK); } // print weekday names String[] weekdayNames = new DateFormatSymbols().getShortWeekdays(); do { System.out.printf("%4s", weekdayNames[weekday]); d.add(Calendar.DAY_OF_MONTH, 1); weekday = d.get(Calendar.DAY_OF_WEEK); } while (weekday != firstDayOfWeek); System.out.println(); for (int i = 1; i <= indent; i++) System.out.print(" "); d.set(Calendar.DAY_OF_MONTH, 1); do { // print day int day = d.get(Calendar.DAY_OF_MONTH); System.out.printf("%6d", day); // mark current day with * if (day == today) System.out.print("*"); else System.out.print(" "); // advance d to the next day d.add(Calendar.DAY_OF_MONTH, 1); weekday = d.get(Calendar.DAY_OF_WEEK); // start a new line at the start of the week if (weekday == firstDayOfWeek) System.out.println(); } while (d.get(Calendar.MONTH) == month); // the loop exits when d is day 1 of the next month // print final end of line if necessary if (weekday != firstDayOfWeek) System.out.println(); }}
0 0
- Java-v8-v1ch04-CalendarTest 输出日历
- CalendarTest
- java 输出当月日历
- java输出当月日历
- Java 输出日历格式
- JAVA 输出日历
- java实现输出日历
- Java日历横向输出
- Java 输出日历格式
- Java输出日历
- java 核心技术 卷1 第四章 CalendarTest
- java Calendar 按月输出日历
- j2se日历输出(java日历)任意年份
- Java 小日历格式输出 闰年计算
- java程序打印输出本月日历
- JAVA输出日历(整合代码)
- java学习笔记--输出本月日历
- JAVA输出日历(整合代码)
- 技术人员如何参与产品设计讨论:激活那一潭死水
- java就该效率低吗?
- Project Euler Q4 解法
- SQLITE C#编程问题集锦
- 二进制、八进制、十进制、十六进制之间转换
- Java-v8-v1ch04-CalendarTest 输出日历
- 数据库连接池设计
- 如何调取其他 layout 的 view
- pcb中layer stack manager 中,右上角的layer pairs 、internal layer pairs和build-up,三者的区别?
- mongodb shell使用
- Linux下防火墙配置、端口的开启和关闭
- JSP页面设置编码
- 基于.NET goshiney框架实现的应用程序
- 看似简单的TextView