UT源码+105032014164

(2)NextDate函数问题 

NextDate函数说明一种复杂的关系,即输入变量之间逻辑关系的复杂性

       NextDate函数包含三个变量month、day和year,函数的输出为输入日期后一天的日期。 要求输入变量month、day和year均为整数值,并且满足下列条件:

   条件1  1≤ month ≤12  否则输出,月份超出范围

   条件2  1≤ day ≤31 否则输出,日期超出范围

   条件3  1912≤ year ≤2050  否则输出:年份超出范围

     String  nextdate(int m,int d,int y)

   注意返回值是字符串。

代码:

 

public class pro1 {

public static void main(String[] args) {

Scanner in = new Scanner(System.in);

int mouth, year, day = 0;

System.out.print("请输入年份:|");

year = in.nextInt();

System.out.print("请输入月份:|");

mouth = in.nextInt();

System.out.print("请输入日期:|");

day = in.nextInt();

System.out.println(getNowDay(mouth, day, year));

 

}

 

/*

 * @ function: 返回输入日期的第二天,

 *

 * @ return: String

 */

public static String getNowDay(int mouth, int day, int year) {

if (year <= 2050 && year >= 1912) {

 

} else {

return "年份超出范围";

}

if (mouth <= 12 && mouth >= 1) {

 

} else {

return "月份超出范围";

}

if (day <= 31 && day >= 1) {

 

} else {

return "日期超出范围";

}

 

SimpleDateFormat date = new SimpleDateFormat("yyyy年MM月dd日");

String str = year + "年" + mouth + "月" + day + "日";

Date getdate = null;

 

try {

getdate = date.parse(str);

} catch (ParseException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

Calendar calendar = new GregorianCalendar();

calendar.setTime(getdate);

calendar.add(calendar.DATE, 1);// 把日期往前增加一天.整数往后+1,负数往前-1

getdate = calendar.getTime(); // 这个时间就是日期当天的结果

String now = date.format(getdate);

return now;

}

 

}

 

posted @ 2017-03-10 14:34  张增进  阅读(182)  评论(1编辑  收藏  举报