您的位置:首页 > 其它

系统会随机给你一个日期(yyyy-MM-dd)字符串,你需要计算这个时间上一个月的最后一天的具体日期,最后以yyyy年MM月dd日的字符形式返回

2016-10-06 20:15 507 查看
试题描述

系统会随机给你一个日期(yyyy-MM-dd)字符串,你需要计算这个时间上一个月的最后一天的具体日期,最后以yyyy年MM月dd日的字符形式返回

输入

输入日期(格式为yyyy-MM-dd)的字符串

输出

输出结果 上一个月最后一天的日期(格式为yyyy年MM月dd日)

输入示例

2016-08-09


输出示例

2016年07月31日


思路

本题考的是java日期处理,学一下应该没什么难度

package com.vapy.offer;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Scanner;

/**
*
* @author vapy 2016年10月6日
*
*/
public class Main10 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String input = "";
if (sc.hasNext()) {
input = sc.next();
}
String[] str = input.split("-");
int[] intInput = new int[str.length];
for (int i = 0, len = str.length; i < len; i++) {
intInput[i] = Integer.valueOf(str[i]);
}

SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日");
Calendar c = Calendar.getInstance();
c.set(intInput[0], intInput[1] - 1, intInput[2]);
c.add(Calendar.MONTH, -1);
c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));
String first = format.format(c.getTime());
System.out.println(first);
}
}


本文代码可在github查看:点击此处
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐