`
izuoyan
  • 浏览: 8937725 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

输入日期,得到明天的日期

 
阅读更多

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);
}
}

分享到:
评论

相关推荐

    date程序 设置日期 显示下一天日期

    C++ 日期程序 ,设置日期, 显示下一天日期 输出格式为日/月/年

    计算n天数后的日期情况

    (1) 计算明天的日期(年、月、日),输 出结果; (2) 输入一个天数(n) ,计算n天后的日 期; (3) 计算上述各个日期是星期几,并输出 (4)理解在本次软件开发中, 容易出现问 题和缺陷的情况 提示1:润年计算方法: 年数可以...

    支持多种调用模式js日期选择

    下拉,输入,导航选择日期,支持周显示,起始日期功能 ,自定义格式,限制日期的范围,选择今天以前的日期(包括今天),选择今天以后的日期(不包括今天),选择本月的日期1号至本月最后一天,选择今天7:00:00至明天21:00:00的...

    WdatePicker日期插件框架资源包4.8.5

    用户可以通过单击或手动输入日期来选择所需的日期。 丰富的选择功能:WdatePicker支持多种日期选择方式,例如年、月、日、时、分的选择,还可以选择日期范围、快速切换月份和年份,以及快捷选择今天、明天等特定...

    用例-昨天 、今天、明天

    用例-昨天 、今天、明天

    使用java编写简单的日历计算

    使用java编写日历,输入日期,计算出星期

    史上最强JavaScript日历控件正式版(无偿的永久的提供给大家免费使用,含全部源代码)

    你可以通过系统给出的动态变量,如%y(当前年),%M(当前月)等来限度日期范围,你还可以通过#{}进行表达式运算,如:#{%d+1}:表示明天 无效日期可以使用此功能禁用,所指定的一个或多个日期,只要你熟悉正则表达式,你可以尽情...

    java中NextDate类

    java中用Date写一个输入当前日期时,在控制台输出明天的日期

    基于从语言的智能日历

    ●用另一个函数来验证所输入日期的合法性。如20150631- 给出提示“4月只有30 天”,如20150229--给出提示 “2015年不是闰年,2月只有28天”,如20151403---给出 提示“您输入的月份有误”。 用第三个函数按如下格式...

    日期选择器

    不推荐使用:应该创建一个新的日期输入(不依赖第三方组件),并将其添加到。 d2l-date-picker 用于D2L Brightspace的基于的Web组件日期选择器 安装 bower install d2l-date-picker 用法 导入d2l-date-picker....

    Flex时间计算

    Flex时间计算 当然输入的日期: 昨天: 明天: 本月总天数: 本月总周数: 本月1号星期: 本月第一周星期一是几号: 当前日期在哪年哪月第几周: 当前日期的上一周: 当前日期的下一周:

    iObjects:用于日常工作的对象,包括日期、期间、卡帐号、货币等。

    新的IDate (“01/30/2012”) 新IPeriod (“今天-明天”) 新IAccount (“1234 1234 1234 1234”) 新国际货币(“美元”) 新的INumber ("1234.01") 新的ICardExpiry ("02/16") 新ICVV (“123”) 新的IOTP ...

    Lotus公式语言函数简介

    @Tomorrow 返回明天日期的时间-日期值 @Trim 从文本字符串中删除位于开头和结尾的空格,同时还删除多余的空格 @True 返回数字 1。该函数等效于 @Yes @Unavailable 使用本函数删除某个域 @Unique 带有参数时,通过仅...

    UTIME「Utime」-crx插件

    )v2 .0.3 *添加了“输入日期顺序”选项*修复了导致多功能框和上下文菜单功能在同一浏览器会话期间不尊重“选项”中所做更改的错误*现在,扩展弹出窗口的高度可以适当地调整以适应内容更改标签。 v2.0.2 *从v1.x重新...

    定时提醒程序代码(C++)

    就成为明天的提醒。 添加 一 关机,重启,注销,打开软件。打开软件输入错误就显示 一堆注解。 查看 一 system(“at”);来实现 删除 一 只能全部删除。 2- 操作:界面里以说明,方向键,回车,返回键控制。...

    Utime-crx插件

    “ 2012年1月1日”和“ 2012年1月1日”都将成功转换)*相对日期,例如“现在”,“今天”,“明天”(以及更多)被识别并转换为适当的时间戳(感谢出色的DateJS库)*在弹出窗口中添加其他“输入组”以一次转换和查看...

    自动关机大师

    2.自动关机功能:可以选择不同的日期进行设置,比如明天关机或者当天几点几分关机。 3.定时提醒功能:每隔多长时间进行提示一次,防止沉迷电脑忘记休息时间。此功能对一些长期对电脑工作的白领或管教小孩比较有帮助。 ...

    Yet Another Lorem Ipsum Generator-crx插件

    对于日期,您可以配置日期格式并在特殊日期(昨天,今天,明天)中选择,或者让扩展程序为您选择一个随机日期。 您是设计师,并且想检查数据对您的设计的外观吗? 您是否需要测试网站并想轻松输入一些测试数据? ...

    node-red-subflows:我的个人子流可能会有所帮助

    如果Interval End Hour和Interval End Minute均为零,则表示明天午夜。 如果设置了“ Msg Date Property ,则将使用该属性的值作为比较日期,否则将立即使用。 选中“ Use Date Property's Date以使用“消息日期...

    然而,另一个Lorem存有发生器「Yet Another Lorem Ipsum Generator」-crx插件

    对于日期,您可以配置日期格式,并在特定日期(昨天,今天,明天)中进行选择,或者让扩展为您选择一个随机日期。 你是一个设计师,想要检查,你的设计如何看待数据?你是否需要测试网站,并想轻松输入一些测试数据...

Global site tag (gtag.js) - Google Analytics