为了账号安全,请及时绑定邮箱和手机立即绑定

java用calendar编写日历

/ 猿问

java用calendar编写日历

holy_yakutsk 2017-06-20 18:12:43
package 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 MyCalendar {
		

	public void print() {
		
//		System.out.println("按格式输入查询日期  yyyy-MM-dd");
//把字符串时间改为date类型		
		
		
		try {
		
		String date1="2017-02-20";
		DateFormat df=new SimpleDateFormat("yyyy-MM-dd");	
		Date d = df.parse(date1);
//把时间传进去		
		Calendar cal = new GregorianCalendar();
		cal.setTime(d);
		cal.set(Calendar.DATE, 1);
//以上完全不知道搞个什么eqe
		int week=Calendar.DAY_OF_WEEK;//获取周几
		System.out.println(week);
		int da=cal.getActualMaximum(Calendar.DATE);//月的天数
		
		System.out.println("日\t一\t二\t三\t四\t五\t六");
		 
		for(int i=1;i<week;i++){
			System.out.print("\t");
		}
		 
		for(int i=1;i<=da;i++){
			System.out.print(i+"\t");
			week++;
			if((week-1)%7==0){
				System.out.println("\t");
			}
		}
		} catch (ParseException e) {
			// TODO 自动生成的 catch 块
			e.printStackTrace();
		}
		
		
		
		
		
	}
	
	 

	public static void main(String[] args) {
		MyCalendar w = new MyCalendar();
		w.print();
//		System.out.println(w.getActualMaximum(2014, 2));
//		Scanner temp=new Scanner(System.in);
//		String date=temp.next();
	}

}

http://img1.sycdn.imooc.com/5948f4310001d81809940450.jpg

反正问题挺大的,一顿瞎写,求大神写个完美版,来参考。

目的是输入日期yyyy-MM-dd,就打印输出类似的日历,,,,

还有每次输出的周几都是7,不知道哪里错了

查看完整描述

3 回答

已采纳
?
Caballarii

int week=Calendar.getInstance().get(Calendar.DAY_OF_WEEK);//获取今天是周几

查看完整回答
反对 回复 2017-06-20
?
troyoqczaq
ascv
查看完整回答
反对 回复 2020-02-17
?
troyoqczaq
aaaaa
查看完整回答
反对 回复 2020-02-17

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信