日期与时间,求二月的天数

import java.text.DateFormat;
import java.util.Date;

public class DateDemo {
    public static void main(String[] args) {
        long time = System.currentTimeMillis();
        Date date = new Date(time);
        System.out.println(date);

        //日期
        //DateFormat dateFormat = DateFormat.getDateInstance();
        //可以传格式风格DateFormat.FULL,LONG,MEDIUM(默认),SHORT
        DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL);

        //调用format方法对日期进行格式化.
        String str_date = dateFormat.format(date);
        System.out.println(str_date);
        
		str_date = "2019/10/1 15:54:30";
        DateFormat dateFormat1 = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");//给出格式
        try{Date date1 = dateFormat1.parse(str_date);//按照格式把给的时间解析成默认格式的时间String-->Date
            System.out.println(date1);
            String date2 = dateFormat1.format(date1);//按照格式把默认时间格式化成给定的格式Date-->String
            System.out.println(date2);
        }catch (ParseException e){};//暂时空处理一下
    }
}

在这里插入图片描述

import java.util.Calendar;
import java.util.Locale;

public class DateDemo2 {
    public static void main(String[] args) {
        Calendar c = Calendar.getInstance(Locale.CHINA);//指定一个常用的格式,可以不写

        System.out.println(c);//打印信息中年月日相关信息都在.获取指定字段的值

        int year = c.get(Calendar.YEAR);
        int mouth = c.get(Calendar.MONTH)+1;//月份从0开始
        int day = c.get(Calendar.DAY_OF_MONTH);
        String week = getCNWeek(Calendar.DAY_OF_WEEK);//第一天是星期日
        System.out.println(year+" "+mouth+" "+day+" "+week);
        System.out.println(c.get(Calendar.DAY_OF_WEEK));
    }

    public static String getCNWeek(int i){
        if(i < 0 || i > 7){
            throw new RuntimeException(i+"没有对应星期");
        }
        String[] weeks = {"","星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
        return weeks[i];
    }
}
/*
java.util.GregorianCalendar[time=1571641708398,areFieldsSet=true,areAllFieldsSet=true,
        lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,
        dstSavings=0,useDaylight=false,transitions=29,lastRule=null],firstDayOfWeek=1,
        minimalDaysInFirstWeek=1,ERA=1,YEAR=2019,MONTH=9,WEEK_OF_YEAR=43,WEEK_OF_MONTH=4,
        DAY_OF_MONTH=21,DAY_OF_YEAR=294,DAY_OF_WEEK=2,DAY_OF_WEEK_IN_MONTH=3,AM_PM=1,HOUR=3,
        HOUR_OF_DAY=15,MINUTE=8,SECOND=28,MILLISECOND=398,ZONE_OFFSET=28800000,DST_OFFSET=0]
        */

求二月天数:三月的前一天就是二月的最后一天

		int year;
        Calendar c = Calendar.getInstance();     
        c.set(year,2,1);//三月1日,如果日为0 的话,是上个月的最后一天
        //System.out.println(c.get(Calendar.MONTH));
        //System.out.println(c.get(Calendar.DAY_OF_MONTH));
        c.add(Calendar.DAY_OF_MONTH,-1);上个月的最后一天
        int day = c.get(Calendar.MONTH);
        System.out.println(day);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值