Calendar类实现当前日期的日历
package com.sxt.home1; 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 Test2 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入日期:如 2017-4-20");
String s = input.nextLine();
//String s = "2017-4-20";//字符串日期 DateFormat df = new SimpleDateFormat("yyyy-MM-dd");//新建日期格式化对象
try {
Date date = df.parse(s);//String-->Date
//Calendar cal = new GregorianCalendar();//方式一:新建Calendar对象 多态 GregorianCalendar:公历
Calendar cal = Calendar.getInstance();//方式二:新建Calendar对象
cal.setTime(date);//设置 Calendar 的时间
int day = cal.get(Calendar.DATE);// 记录当前几号 Calendar.DATE : 指示一个月中的某天,与 DAY_OF_MONTH 是同义词
//System.out.println(day); cal.set(Calendar.DATE, 1);//设置从一号开始
System.out.println("一\t二\t三\t四\t五\t六\t日");//打印星期
int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK);//获取当前日期一周中的第几天!
//System.out.println(dayOfWeek);
//(周日为第一天)一周第几天 前空格个数
// 1 6
// 2 0
// 3 1
// 4 2
// 5 3
// 6 4
// 7 5
if(dayOfWeek >= 2){
for(int i=1; i<=(dayOfWeek-2); i++){
System.out.print("\t");//打印1号之前的空格
}
}else{
for(int i=1; i<=6; i++){
System.out.print("\t");//打印1号之前的空格
}
}
int monthDays = cal.getActualMaximum(Calendar.DATE);//获取当月的最大天数
for(int i=1; i<=monthDays; i++){
if(i == day){
System.out.print("*");//如果是当前日 打印*
}
System.out.print(i+"\t");//显示一个月的每一天 int j = cal.get(Calendar.DAY_OF_WEEK);//获取当前日期一周中的第几天!
if(j == Calendar.SUNDAY){//周日即第1天换行(j==1)
System.out.println();
}
cal.add(Calendar.DATE, 1); //Calendar对象 添加指定的时间量
} } catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}
Calendar类实现当前日期的日历的更多相关文章
- Java.util 包(Date 类、Calendar类、Random类)
java.util 包提供了一些实用的方法和数据结构. Date 类 Date 类表示日期和时间,里面封装了操作日期和时间的方法.Date 类经常用来获取系统当前时间. 构造方法: 构造方法 说明 D ...
- Java的Calendar类
通过Date类我们可以创建并格式化一个日期对象,但是如何才能设置和获取日期数据的特定部分呢?----Calendar类 Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,通过getIn ...
- Calendar类
Calendar类 注意:根据日历规则,如果想要这个月减去5天,那么则为: add(Calendar.Day,-5) 成员方法: public int get(int field):返回给定日历段的值 ...
- 第28天学习打卡(Date和Calendar类 基本类型的包装类 集合 增强for循环 )
Date和Calendar类 简介 日期和日历类,用于操作日期相关信息. 构造方法 Date(): 构造一个日期对象,当前系统时间,精确到毫秒. Date(long): 构造一个日期对象,时间为自&q ...
- Java基础知识强化94:Calendar类之Calendar概述和获取日历字段的方法
1. Calendar类概述: Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR.MONTH.DAY_OF_MONTH.HOUR 等 日历字段之间的转换提供了一些方法,并 ...
- Java api 入门教程 之 JAVA的Date类与Calendar类
在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理. 一.这里简单介绍一下Date类的使 ...
- JAVA的Date类与Calendar类【转】
Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date ...
- java 14 -10 Calendar类以及练习
Calendar:它为特定瞬间与一组诸如 YEAR.MONTH.DAY_OF_MONTH.HOUR 等 日历字段之间的转换提供了一些方法, 并为操作日历字段(例如获得下星期的日期)提供了一些方法. 1 ...
- Java API —— Calendar类
1.Calendar类概述 Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR.MONTH.DAY_OF_MONTH.HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段 ...
随机推荐
- Ubuntu 18.04 美化
Ubuntu 18.04 美化 sudo apt install gnome-tweak-tool sudo apt install gnome-shell-extensions sudo apt i ...
- hql 条件查询 返回空的一种情况
为何会出现查询为空,但是查询整个表没问题的情况呢? 这里是没有分清字符串和变量 原来写的是, String hql = "from ClientInfoModel where clientI ...
- 洛谷P1569属牛的抗议 超级强力无敌弱化版
P1569 [USACO11FEB]属牛的抗议Generic Cow Prote- 题目描述 约翰家的N头奶牛聚集在一起,排成一列,正在进行一项抗议活动.第i头奶牛的理智度 为Ai,Ai可能是负数.约 ...
- Leetcode96.Unique Binary Search Trees不同的二叉搜索树
给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例: 输入: 3 输出: 5 解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 假设n个节点存在二叉排序树的 ...
- ssdb常用知识点
ssdb备份与恢复 http://ssdb.io/docs/zh_cn/backup.html ssdb注意事项 建议将logger.level设置为 debug 级别. 配置文件 deny,allo ...
- 未加星标 ajax三级联动的实现方法
<div id="sanji"></div> 下面考虑的是要有省市区这三列,这三列用的是下拉列表,那么里面要用<option></opti ...
- 安装 Composer
参考百度经验:http://jingyan.baidu.com/article/4f34706ed04013e386b56d72.html Composer下载:https://getcomposer ...
- vue学习之组件(component)(二)
自定义事件 父组件使用 prop 传递数据给子组件.但子组件怎么跟父组件通信呢?这个时候 Vue 的自定义事件系统就派得上用场了. 1. 使用 v-on 绑定自定义事件 每个vue实例都实现了事件接口 ...
- Expires
(装载) 简要:添加Expires头能有效的利用浏览器的缓存能力来改善页面的性能,能在后续的页面中有效避免很多不必要的Http请求,WEB服务器使用Expires头来告诉Web客户端它可以使用一个组件 ...
- arcgis增大缩放级别
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...