calendar 示例
package unit5; import java.text.DateFormatSymbols; public class MyMonth {
private int month;
private int start_of_week;
private int days_in_month;
public static String [] weekdayNames=new DateFormatSymbols().getShortWeekdays();
private String[][] data = new String[7][8];
public MyMonth(int m,int s,int d){
month=m;
days_in_month=d;
start_of_week=s; for(int j=1;j<8;j++){
data[0][j]=new String(MyMonth.weekdayNames[j]);
} int days=1,day_of_week=start_of_week,r=1;
do{
data[r][day_of_week]=String.valueOf(days);
days++;
day_of_week++;
if(day_of_week==8){
day_of_week=1;
r++;
} }while(days<=days_in_month);
}
public void display(){
System.out.println("\t\t\t"+(month+1)+"month");
System.out.println("==================================================");
for(int i=0;i<7;i++){
for(int j=1;j<8;j++){
if(data[i][j]==null) System.out.print("\t");
else System.out.print(data[i][j]+"\t");
}
System.out.println();
}
System.out.println("==================================================");
}
public int getMonth(){return month+1;}
public int getDaysInMoth(){return days_in_month;}
public String[][] getData(){return data;} }
package unit5;
import java.awt.CardLayout;
import java.util.*; public class MyCalendarTest {
public static void main(String[] args) {
Calendar d =Calendar.getInstance();
Scanner keyin = new Scanner(System.in);
System.out.println("please enter the year that you want to see:");
int year = keyin.nextInt();
d.set(Calendar.YEAR,year);
MyMonth[] mymonth=new MyMonth[12];
for(int i=0;i<Calendar.DECEMBER;i++){
d.set(Calendar.MONTH,i);
d.set(Calendar.DAY_OF_MONTH,1);
mymonth[i]=new MyMonth(i,d.get(Calendar.DAY_OF_WEEK),d.getActualMaximum(Calendar.DAY_OF_MONTH));
}
//mymonth[0].display();
for(int i=0;i<=Calendar.DECEMBER;i+=2){
displyTwoMonth(mymonth[0],mymonth[1]);
} }
public static void displyTwoMonth(MyMonth mon1,MyMonth mon2){
System.out.print("\t\t\t"+mon1.getMonth()+" month ");
System.out.println("\t\t\t\t\t\t"+mon2.getMonth()+" moth ");
System.out.print("==========================================");
System.out.println("\t\t\t=============================================");
String [][]d1=mon1.getData();
String [][]d2 = mon2.getData();
for(int i=0;i<7;i++){
for(int j=0;j<8;j++)
{
if(d1[i][j]==null) System.out.print("\t");
else System.out.print(d1[i][j]+"\t");
}
for(int j=0;j<8;j++)
{
if(d1[i][j]==null) System.out.print("\t");
else System.out.print(d2[i][j]+"\t");
}
System.out.println();
} System.out.print("==========================================");
System.out.println("============================================="); } }
calendar 示例的更多相关文章
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(1) Calendar
Java 操作日期/时间,往往会涉及到Calendar,Date,DateFormat这些类. 最近决定把这些内容系统的整理一下,这样以后使用的时候,会更得心应手.本章的内容是主要讲解“Java时间框 ...
- Java常用类库
System System:类中的方法和属性都是静态的. out:标准输出,默认是控制台. in:标准输入,默认是键盘. System描述系统一些信息.获取系统属性信息:Properties getP ...
- wxWidgets的安装编译、相关配置、问题分析处理
wxWidgets的安装编译.相关配置.问题分析处理 一.介绍部分 (win7 下的 GUI 效果图见 本篇文章的最后部分截图2张) wxWidgets是一个开源的跨平台的C++构架库(framewo ...
- java里的日期时间
为了更好理解java的日期时间类,在这里我们先介绍一下关于历法.标准时间的一些概念. 历法有很多种,我们大中华上下五千年,自然也有自己的历法,生活中我们通常把自己传统的历法叫做农历,也有人叫它阴历或夏 ...
- Quartz.Net使用教程
在项目的开发过程中,难免会遇见后需要后台处理的任务,例如定时发送邮件通知.后台处理耗时的数据处理等,这个时候你就需要Quartz.Net了. Quartz.Net是纯净的,它是一个.Net程序集,是非 ...
- Date和Calendar时间操作常用方法及示例
package test; import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date; /** ...
- java 的Calendar类的可视化日历示例
import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; imp ...
- 【java】org.apache.commons.lang3功能示例
org.apache.commons.lang3功能示例 package com.simple.test; import java.util.Date; import java.util.Iterat ...
- 转——JAVA中calendar,date,string 的相互转换和详细用法
package cn.outofmemory.codes.Date; import java.util.Calendar; import java.util.Date; public class Ca ...
随机推荐
- Powershell学习之道-文件夹共享及磁盘映射
导读 在Linux环境下,我们很轻易就能得心应手地通过命令操作一切事物,在Windows下,Powershell也算是后起之秀,提供大量的cmdlet以及c#的横向拓展.下面将由小编带领大家通过Pow ...
- CPU供电维修
- Linux 查看系统用户的登录日志
查看用户登录系统的日志 有两类日志记录用户登录的行为,一是记录登录者的数据,一个是记录用户的登录时间 一,记录用户登录数据 /var/log/wtmp日志文件记录用户登录的数据 ...
- JAVA程序1,1,2,3,5,8,13,21....第30个是什么...?
解题思路:从第3个数字开始,后一个数字是前2个数字的和public class text{ public static void main(String[] args) { int num1=1,nu ...
- 【leetcode】Interleaving String
Interleaving String Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2. Fo ...
- spring3.2.8+quartz2.2.0(比较全,对比quartz1.x的配置)
spring3.2.8 + quartz2.2.0报错: java.lang.IncompatibleClassChangeError: class org.springframework.sched ...
- iOS 利用constraint实现2个控件上下的空白是相等的
说的有点乱,先看个图把 其实这个constrant的目的就是控制两个方形的控件上方和下方的空白大小. 对于每一个方块来说,他们上方和下方的空白是相同的.这种“居中”的设计到处可见.一个控件想实现这种居 ...
- iOS的runtime(转)
1. 什么是runtime 运行时刻是指一个程序在运行(或者在被执行)的状态.也就是说,当你打开一个程序使它在电脑上运行的时候,那个程序就是处于运行时刻.在一些编程语言中,把某些可以重用的程序或者实例 ...
- css样式自适应,支持数字
td加上style="word-break: break-all;word-wrap: break-word;"样式即可
- 强制JSP页面刷新,防止被服务器缓存(可用于静态include强制刷新)
对于jsp页面,为了防止页面被服务器缓存.始终返回同样的结果. 通常的做法是在客户端的url后面加上一个变化的参数,比如加一个当前时间. 我现在使用的方法是在jsp头部添加以下代码: <% ...