A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 敲敲乐z 中级黑马   /  2016-8-8 22:25  /  741 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

(1)通过键盘录入日期字符串,格式(xxxx-xx-xx)
(2)定义方法获取该日期的前一天
(3)定义方法获取该日期的上个月份
(4)定义方法获取该日期的所在月份的第一天
(5)定义方法获取该日期的所在月份的最后一天

1 个回复

倒序浏览
写的不好,仅供交流参考。另外所在月份的第一天不都是1号吗
[Java] 纯文本查看 复制代码
/**
	 * @param args
	 * @throws ParseException 
	 * 
	 */
	public static void main(String[] args) throws ParseException{
		Scanner sc = new Scanner(System.in);
		System.out.println("请按格式输入:yyyy-MM-dd");
		
		String s = sc.nextLine();
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		Date d = new Date();
		try{
			d = sdf.parse(s);
		} catch (ParseException e) {
			System.out.println("请按格式输入,错误:" + e.toString() );
			//e.printStackTrace();
		}
		long time = d.getTime();
		getlastday(time);
		getlastmon(time);
		getlastdayofmon(time);
		
	}

	private static void getlastdayofmon(long time) {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		Calendar c = Calendar.getInstance();
		Date d = new Date(time);
		c.setTime(d);
		c.add(Calendar.MONTH, 1);
		c.set(Calendar.DATE, 1);
		c.add(Calendar.DATE, -1);
		System.out.println(sdf.format(c.getTime()));
	}

	private static void getlastmon(long time) {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		Calendar c = Calendar.getInstance();
		Date d = new Date(time);
		c.setTime(d);
		c.add(Calendar.MONTH, -1);
		System.out.println(sdf.format(c.getTime()));
	}

	private static void getlastday(long time) {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		Date d = new Date(time);
		Calendar c = Calendar.getInstance();
		c.setTime(d);
		c.add(Calendar.DATE, -1);
		System.out.println(sdf.format(c.getTime()));
	}

评分

参与人数 1技术分 +1 收起 理由
橘子哥 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马