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("=============================================");

    }

}
时间: 2024-10-12 19:27:21

calendar 示例的相关文章

Android - 日期类的使用

Android的日期类, Date和Calendar, Date显示, Calendar计算. 处理顺序: String -> Date -> Calendar. 示例实现了几个比较常见的方法: (1) 日期相隔天数; (2) 字符串转换Date类; (3) 获取之前的日期; (4) 判断是否超过今天等. 代码: package me.chunyu.Pedometer.manager; import android.util.Pair; import java.text.ParseExcept

java 的Calendar类的可视化日历示例

import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.Scanner; /** * 可视化日历程序 * */ public class VisualCal

常用工具类(System,Runtime,Date,Calendar,Math)

一.Sy 一个java.lang包中的静态工具类. 三大字段: static PrintStream err "标准"错误输出流. static InputStream in "标准"输入流. static PrintStream out "标准"输出流. 其他常用方法: 描述系统信息: 获取系统属性信息: static Properties getProperties(): (Properties是Hashtable的子类,也就是Map 的子类

Webpack 配置示例

Webpack 作为前端构建工具,对于大型网站开发,大大提升了开发效率.要使用webpack需要先安装webpack工具: 先来看一个最简单的命令 $ webpack main.js bundle.js 该命令将 main.js 输出到 bundle.js . 通常,都不会这样直接使用使用,而是在项目根目录下进行打包配置,配置文件默认为webpack.config.js. // webpack.config.js module.exports = { entry: './main.js', ou

转——JAVA中calendar,date,string 的相互转换和详细用法

package cn.outofmemory.codes.Date; import java.util.Calendar; import java.util.Date; public class CalendarDemo { public static void main(String[] args) { Calendar calendar=Calendar.getInstance(); calendar.setTime(new Date()); System.out.println("现在时间

在第一段ionic示例的基础上增加底部导航

demo2.html <!DOCTYPE html> <html ng-app="app"> <head> <meta charset="utf-8"> <title>angular-demo2</title> <link href="../lib/ionic/css/ionic.css" rel="stylesheet"> <scrip

Java基础知识强化97:Calendar类之获取任意年份的2月有多少天的案例

1. 分析: (1)键盘录入任意的年份 (2)设置日历对象的年月日            年:就是(1)输入的数据            月:是2(3月份)            日:是1  (3)把时间往前推一天,就是2月的最后一天  (4)输出这一天 2. 代码示例: 1 package cn.itcast_03; 2 3 import java.util.Calendar; 4 import java.util.Scanner; 5 6 /* 7 * 获取任意一年的二月有多少天 8 * 9

Android 开发笔记 “java.util.Calendar.compareTo()”

 java.util.Calendar.compareTo() 方法比较Calendar对象和anotherCalendar对象之间的时间值(毫秒偏移量). 声明 以下是java.util.Calendar.compareTo()方法的声明 public int compareTo(Calendar anotherCalendar) 参数 anotherCalendar -- 要比较的Calendar对象. 返回值 如果参数所代表的时间等于通过此Calendar对象表示的时间方法返回0;或如果此

关于31天App教程示例中一些因SDK版本而出现的问题(转)

由于国外那个知名的31天案例教程比较老,所用官方API是2008年时的2.X,所以在现在的Xcode3-4之后或多或少都有编译警告和错误信息.必须做些适应iOS版本的代码更改才能顺利编译通过. Day1:Minutes to Midnight NSDate* now = [NSDate date];int hour = 23 - [[now dateWithCalendarFormat:nil timeZone:nil] hourOfDay];int min = 59 - [[now dateW