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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 七宝 中级黑马   /  2013-8-16 00:12  /  1706 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 七宝 于 2013-8-16 00:33 编辑

我们都知道,Data类中的很多方法都过时了,从而出来了个新日历类Calendar,当时有时候发现,Calendar中的功能也无法全部取代Data中的,如果要用到Data的话,那么所用到的方法又过时了,虽然能解决问题,但总觉得美中不足,不知道是不是自己水平不够,求大神指导,上次做的一个题目

  1. <P> /**
  2. *
  3. *  编写程序,该程序启动后用户可以按“”的格式输入一个日期,程序计算这一天是星期几,并且计算出是一年中的第几天。
  4. *
  5. * */
  6. public class Test9 {
  7. public static void main(String[] args) throws ParseException {
  8. //按格式输入日期赋值给字符串in_date
  9. System.out.println("请按格式为yyyy-MM-dd输入一个日期");
  10. Scanner s = new Scanner(System.in);
  11. String in_date=s.nextLine();

  12. //创建格式器将字符串转成日期
  13. DateFormat df = DateFormat.getDateInstance();
  14. Date d = df.parse(in_date);

  15. //获取并输入星期
  16. String week = getWeeks(d.getDay());//日期获取方法过时------------------------------------------------------------------------过时方法
  17. System.out.println("今天是: "+week);

  18. //获取本年一月一日的字符串并转成日期对象
  19. int year=d.getYear()+1900;//日期获取年的方法过时----------------------------------------------------------------------------过时方法
  20. String toYear=year+"-01-01";
  21. Date d1=df.parse(toYear);

  22. //今天与今年一月一号相间隔的时间
  23. long time=Math.abs(d1.getTime()-d.getTime());

  24. //间隔的天数
  25. int day = getDay(time)+1;
  26. System.out.println("今天是今年的第: "+day+" 天");
  27. }</P>
  28. <P>private static int getDay(long time) {
  29. //创建获取间隔天数的方法
  30. int day = (int)(time/1000/60/60/24);
  31. return day;
  32. }</P>
  33. <P>private static String getWeeks(int day) {
  34. //创建方法 将星期数与星期相对应起来
  35. String[] weeks={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
  36. return weeks[day];
  37. }
  38. }</P>
复制代码
这里是通过键盘输入了一个日期类型 输入的是字符串 然后转成Data 要获取输入输入的年 ,星期,如果用Calendar,怎么转换,怎么做?

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1

查看全部评分

1 个回复

倒序浏览
这是小弟的总结,看看能不能帮助到你。

Java中几个常用类API总结.rar

37.53 KB, 阅读权限: 10, 下载次数: 16

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1

查看全部评分

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