运用Date日期来做日历
import java.util.*;
import java.text.*;
class Two
{
public static void main(String[] args)
{
System.out.println("*****请输入日期(格式:2016-01)*****");
Scanner sc = new Scanner(System.in);
String scStr = sc.next();
//****** 提取星期 年 月
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Date date = new Date();
try{
date = sdf.parse(scStr); //输入的字符串转换成日期
}catch(ParseException e){
}
SimpleDateFormat sdfE = new SimpleDateFormat("E");
String dE = sdfE.format(date); //输入的月份1号 是星期几
SimpleDateFormat sdfY = new SimpleDateFormat("yyyy");
String dY = sdfY.format(date); //提取年
SimpleDateFormat sdfM = new SimpleDateFormat("MM");
String dM = sdfM.format(date); //提取月
//****** 将 年 月转换为数字
int month = 0; //接收字符串转数字
int year = 0;
try{ //捕捉异常处理
year = Integer.parseInt(dY);
month = Integer.parseInt(dM);
}catch(NumberFormatException e){}
System.out.println("星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六");
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
calendar(dE,31);
break;
// 30天
case 4:
case 6:
case 11:
calendar(dE,30);
break;
// 28 或 29天的
case 2:
if(year%4==0 && year%100!=0){
calendar(dE,29);
}else {
calendar(dE,28);
}
break;
default:
break;
}
}
public static void calendar(String e,int n){
int a = 0;
if(e.equals("星期日")){
a = 0;
} else if(e.equals("星期一")){
a = 1;
}else if(e.equals("星期二")){
a = 2;
}else if(e.equals("星期三")){
a = 3;
}else if(e.equals("星期四")){
a = 4;
}else if(e.equals("星期五")){
a = 5;
}else if(e.equals("星期六")){
a = 6;
}
for(int k = 1; k <= a+n; k++){
if(k<=a){
System.out.print("*\t");
}else {
System.out.print(k-a+"\t");
}
if(k%7==0){
System.out.println();
}
}
}
}
运用Date日期来做日历的更多相关文章
- Date日期类,Canlendar日历类,Math类,Random随机数学类
Date日期类,SimpleDateFormat日期格式类 Date 表示特定的时间,精确到毫秒 常用方法 getTime() setTime() before() after() compareT ...
- Date日期类 Calendar日历类 完成可视化日历
package com.test; import java.text.DateFormat; import java.text.ParseException; import java.text.Sim ...
- java之Date(日期)、Date格式化、Calendar(日历)
参考http://how2j.cn/k/date/date-date/346.html Date(日期) Date类 注意:是java.util.Date; 而非 java.sql.Date,此类是给 ...
- 常用类--Date日期类,SimpleDateFormat日期格式类,Calendar日历类,Math数学工具类,Random随机数类
Date日期类 Date表示特定的时间,精确到毫秒; 构造方法: public Data() public Date(long date) 常用方法: public long getTime() pu ...
- 【转】Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历))
Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历)) 本文由 Luzhuo 编写,转发请保留该信息. 原文: http://blog. ...
- Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历))
Python3 日期时间 相关模块(time(时间) / datatime(日期时间) / calendar(日历)) 本文由 Luzhuo 编写,转发请保留该信息. 原文: http://blog. ...
- 从.net复制源代码中国农历阵列,必要做日历
从.net复制源代码中国农历阵列,必要做日历 const { 闰月的月份.春节的阳历日期(农历正月初一).农历的每一个月天数 } c_arrLunarInfo: array [1900 .. 2100 ...
- SpringMVC解决@ResponseBody返回Json的Date日期类型的转换问题
在做项目的时候,发现后台把Date类型的属性以json字符串的形式返回,前台拿不到转换后的日期格式,始终响应回去的都是long类型时间戳. 查阅资料之后找到解决方法: 方法一(在springmvc的x ...
- js转换Date日期格式
有时候做项目会用到js的date日期格式,因为Date()返回的格式不是我们需要的, Date()返回格式: Thu Mar 19 2015 12:00:00 GMT+0800 (中国标准时间) 而我 ...
随机推荐
- Adapting to views using css or js
using css @media screen and (-ms-view-state: fullscreen-landscape) { } @media screen and (-ms-view-s ...
- nutch 生产者队列的大小如何控制 threadcount * 50
如果topN 设置为1000万 ,不会这1000万都放到QueueFeeder(内存)中,而是从文件系统中(hdfs)中迭代不断填充QueueFeeder.队列中默认存放 threadcount * ...
- eclipse中mavean的使用配置
eclipse-jee-neon-R-win32 maven-3.3.9 JDK jdk-8u101-windows-i586 eclipse中配置mavean的步骤就不说了,网上很多教程,也很简单 ...
- c++函数内部可以返回函数内部定义的指针 但是不能返回函数内部定义的数组
1.返回数组 // demo.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<stdio.h> char *m ...
- 如何在Ubuntu Unity上修改应用程序图标
转自如何在Ubuntu Unity上修改应用程序图标 这篇文章将教大家在Ubuntu Unity上修改应用程序图标,这个教程适合于Ubuntu 14.04, Ubuntu 13.10, Ubuntu ...
- 【 NOIP2015 DAY1 T2 信息传递】带权并查集
题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的生日.之后每一 ...
- Android开发规范
一.Android编码规范 1.java代码中不出现中文,最多注释中可以出现中文 2.局部变量命名.静态成员变量命名 只能包含字母,单词首字母出第一个外,都为大写,其他字母都为小写 3.常量命名 只能 ...
- VJP1193 扫雷(状压)
链接 保存当前行和前一行两行的状态 #include <iostream> #include<cstdio> #include<cstring> #include& ...
- Linux Kernel ‘oz_cdev_write()’函数本地缓冲区溢出漏洞
漏洞名称: Linux Kernel ‘oz_cdev_write()’函数本地缓冲区溢出漏洞 CNNVD编号: CNNVD-201311-060 发布时间: 2013-11-07 更新时间: 201 ...
- 在 Windows Azure 上部署并定制化 FreeBSD 虚拟机镜像
发布于 2014-12-11 作者 陈阳 FreeBSD 基础镜像现已登陆中国的 VM Depot! 对于青睐 BSD 而非 Linux 的开源爱好者来说,这无疑是个好消息.同时,随着该基础镜像 ...