可视化日历【Java,有详细的注释】
2016-05-18 00:00
453 查看
package cn.bla.test; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.Scanner; /** * VisualCalender ===可视化日历=== * @author 杨润康 * @category java * @since 2015-5-31 * @version 1 */ public class VisualCalender { public static void main(String[] args) throws Exception { Scanner input = new Scanner(System.in); System.out.println("请输入日期:<格式:2015-5-5>"); String time=input.next();//用户输入的字符串 //具体的处理判断 DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date date = dateFormat.parse(time);//将字符串解析成日期类型 //日历类上场 Calendar calendar = new GregorianCalendar(); calendar.setTime(date);//将日期放进日历里面去,然后对日历进行操作,实际上就是对日期进行操作 //因为日历都是从一开始的,所以先将用户输入的日期的日部分变为1 calendar.set(Calendar.DATE, 1); //得到当前月份的一号,是在一周之内的周几 (得到的数要-1 ,因为老外的是从周日开始一周的生活的,所以比我们早了一天) int actualDayInAWeek=calendar.get(Calendar.DAY_OF_WEEK)-1; //得到当前月份有多少天DATE || DAY_OF_MONTH int actualDaysInMonth=calendar.getMaximum(Calendar.DAY_OF_MONTH); //现在处理在具体的某一号的后面做个标记 //先前为了处理月份的一号是在一周的星期几时,曾把它设为1,现在把它恢复过来,为下面的标记做准备 String getOldDate=dateFormat.format(date); Date oldDate = dateFormat.parse(getOldDate); calendar.setTime(oldDate); //取月份中的具体的某一号 int day=calendar.get(Calendar.DATE); //程序的可视化部分 System.out.println("\t\t===可视化日历==="); System.out.println("日\t一\t二\t三\t四\t五\t六"); for(int i=1;i<=actualDaysInMonth;i++){ //让1号在具体的周几的位置,然后在这个位置之前是不打印任何字符的,只打印空格 if(i<=actualDayInAWeek){ System.out.print("\t"); continue; } if((i-actualDayInAWeek)==day){//在具体的某一号的后面做#个标记 System.out.print((i-actualDayInAWeek)+"#\t"); continue; } System.out.print((i-actualDayInAWeek)+"\t");//(i-actualDayInAWeek)在周X的位置,是从一开始打印的 if(i%7==0){ System.out.println(); } } } }
相关文章推荐
- XML格式文本 与 JavaBean 相互转换
- 数学公式计算 结合 JavaBean
- 使用Java为图片添加水印
- Java处理数学公式得出结果
- 【java】Date、String、Calendar类型之间的转化
- Java ClassLoader原理
- dao设计模式
- javaBean
- 内置对象
- springmvc-json小案例
- java创建线程的三种方式(学习笔记)
- 使用POI分割纯文本Excel文件 支持XLSX\XLS
- java服务端模拟form传送文件
- spring捡漏
- Js编码和Java后台解码
- eclipse搭建springMVC项目发现的问题
- 最全面的使用idea和gradle把java项目打包成jar的方法
- java 文件zip打包
- JAVA HashSet简单代码示例
- JAVA Map简单代码示例