输入日期,得到明天的日期
来源:互联网 发布:淘宝智能版退回专业版 编辑:程序博客网 时间:2024/05/21 17:11
package dateEntity;
public class Date1 {
private String date;//日期字符串
/**
* 无参构造函数
*/
public Date1(){}
/**
* 有参构造函数
*/
public Date1(String date){
setDate(date);
}
/**
* 设置日期
*/
public void setDate(String date) {
String [] arr=date.split("-");
if(arr.length!=3){
System.out.println("程序输出:日期非法");
return;
}
int yyyy,mm,dd;
try{
yyyy=Integer.parseInt(arr[0]);
mm=Integer.parseInt(arr[1]);
dd=Integer.parseInt(arr[2]);
}catch (Exception e) {
System.out.println("程序输出:日期非法");
return;
}
//如果年或月或日的范围不正确,则示错并返回
if((yyyy<1900 || yyyy>2050) || (mm<1 || mm>12) || (dd<1 || dd>getMaxDate(yyyy, mm)) ){
System.out.println("程序输出:日期非法");
return;
}
this.date = date;
}
/**
* 取得日期
*/
public String getDate() {
return date;
}
/**
* 取得当前日期的后一天
*/
public String getNextDate(){
String [] arr=date.split("-");
int yyyy,mm,dd;
yyyy=Integer.parseInt(arr[0]);
mm=Integer.parseInt(arr[1]);
dd=Integer.parseInt(arr[2]);
if(dd
return yyyy+"-"+mm+"-"+(dd+1);
}
if(mm==12){
return (yyyy+1)+"-1-1";
}
return yyyy+"-"+(mm+1)+"-1";
}
/**
* 判断是否是闰年
*/
public boolean isLeapYear(int yyyy){
if( (yyyy%4==0 && yyyy%100!=0) || yyyy%400==0 ){
return true;
}
return false;
}
/**
* 根据年份和月份, 返回该年该月的最大日期数
*/
public int getMaxDate(int yyyy,int mm){
int maxDate;
switch (mm) {
case 2:
maxDate=28;
if(isLeapYear(yyyy)){
maxDate=29;
}
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
maxDate=31;
break;
default:
maxDate=30;
break;
}
return maxDate;
}
}
//*************************************************************************//
package dateTest;
import java.util.Scanner;
import dateEntity.Date1;
public class TestDate1 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请按'yyyy-mm-dd'格式输入一个日期(输入'no'则退出),程序将输出下一天的日期:");
do{
System.out.print("用户输入:");
String strDate=input.next();
if(strDate.equals("no")){
System.out.println("程序退出!");
break;
}
Date1 date=new Date1(strDate);
if(date.getDate()!=null){
System.out.println("程序输出:"+date.getNextDate());
}
System.out.println();
}while(true);
}
}
//*************************************************************************//
上面是学JavaOOP时老师要求用面向对象的方法, 自己写一个类来完成的。
另:最近想法:
package com.yenange.test2;
import java.util.Date;
public class testDateAdd {
public static void main(String[] args) {
Date date=new Date();
Long addDate=date.getTime()+24*60*60*1000;
date=new Date(addDate);
System.out.println(date);
}
}
- 输入日期,得到明天的日期
- java中 如何得到明天的日期的函数
- java中日期计算,向后移动,得到明天的日期
- 得到今天日期并得到前后几天的日期,或者输入指定格式任意日期得到前后几天的日期
- js 输入2个日期(出发日期和结束日期) 得到之间的所有日期
- 输入日期,距离天数,得到日期
- 定义日期类,根据输入的日期计算明天日期,上机实践--我的c++之路
- 通过输入的时间time得到第二天的日期
- 输入一个日期,得到这个月的最后一天
- 用java实现输入日期后得到这个日期是这一年的第多少天
- (jquery)input输入一个日期得到前后几天的日期
- 如何得到一个日期的前一天日期
- js日期加减得到新的日期
- js日期加减得到新的日期
- js日期加减得到新的日期
- 日期加天数得到新的日期
- 得到两个日期之间的日期列表
- PHP获取今天、昨天、明天的日期
- 11
- 重装ie
- 累
- 常用正则表达式
- 电脑无法打开网页但是能上QQ的解决办法
- 输入日期,得到明天的日期
- 马云,马化腾,比尔盖茨-百度风云榜——今日互联网人物排行榜(20101005)
- C#中List与IList的区别
- “QApplication: 没有那个文件或目录“解决解决之道
- c++ 编写自己的小型游戏开发库
- 从硬盘用ISO安装Redhat5.4版
- 程序员:下一次面试前你需要准备的五个基本步骤
- JavaScript能做什么?
- JavaScript基础