java中如何获取某个日期是当月的最后一天

java中如何获取某个日期是当月的最后一天,第1张

用Calendar就能结决你的问题,代码如下:

import javautilCalendar;

import javautilDate;

public class Data {

public static void main(String[] args) {

Calendar a=CalendargetInstance();

aset(CalendarDATE, 1);//把日期设置为当月第一天

aroll(CalendarDATE, -1);//日期回滚一天,也就是最后一天

int MaxDate=aget(CalendarDATE);

Systemoutprintln("该月最大天数:"+MaxDate);

}

}

ps:你也可以自己改改把月份设定为自己想要的那个月

附上代码:

        Date date = new Date("2014/1/10 18:20");

        Date date2 = new Date("2014/1/11 3:5");

        long temp = date2getTime() - dategetTime();    //相差毫秒数

        long hours = temp / 1000 / 3600;                //相差小时数

        long temp2 = temp % (1000  3600);

        long mins = temp2 / 1000 / 60;                    //相差分钟数

        Systemoutprintln("date2 与 date 相差" + hours + "小时"+ mins + "分钟");

希望能够帮助到你!

如果我的回答对你有帮助,

别忘了点击我的回答下方选为满意答案按钮。

谢谢!

首先:getActualMaximum()是获取给定日历字段的可能最大值

这个指定是调用这个方法的calender对象,在你的程序中就是c中指定的csetTime(d)

cDAY_OF_MONTH是Calendar对象给定的常量,这个常量匹配的值就是5,也就是说在Calendar对象中,5这个整数代表的就是月份中的日期。这是Calendar中定义的,当然这个数字也可以是别的,只是JDK为这个对象定义5代表了DAY_OF_MONTH的意思而已,不用想的太复杂。之所以为了定这样的常量就是为了方便开发者调用这个类的方法时,不用直接记住使用

也就是说你输入的实参是5的时候,这个返回的才是你指定的月份的最大天数。而这个月份在哪指定呢,就在你c这个calendar对象里设置。你可以把String s = "2013-07-10";月份改变试试看

import os

print(osname)  # *** 作系统名称  Windows nt 非Windows posix

print(ossep)  # 路径分隔符    Windows \    其他 /

import os

# 使用 ospath 方法获取文件的路径

# 001获取文件的绝对路径 使用abspath方法

print(ospathabspath("04_模块导入py"))

#  运行结果:D:\mypycharm\pythonProject\千峰培训\day11module1\04_模块导入py

# 002判断是否是文件 False

print(ospathisdir("")) 

# 运行结果: False

# 003判断文件是否存在如果存在返回True 否则返回False

print(ospathexists("mydir"))

# True

import os

files = "20201222testpy"

print(filesrpartition("")[-1]) 

print(ospathsplitext(files)[-1])

# 运行结果:

# 获取文件的后缀名  py

# 获取文件的后缀名 py

import os

print(osgetcwd())

# 运行结果:

# D:\mypycharm\pythonProject\培训\day11module1

import os

oschdir("mydir")

print(osgetcwd())

# D:\mypycharm\pythonProject\培训\day11module1\mydir

import os

osrename("66py","/99py")

import os

# 001删除文件

osremove("/99py")

# 002删除空文件夹

osrmdir("/mydir")

osremovedirs("mydir")

import os

osmkdir("mydir")

import os

# 001列出指定目录里所有的子目录和文件

print(oslistdir("D:\mypycharm\pythonProject"))

# 002默认当前目录里的 子目录和文件

print(oslistdir())

# 运行结果:

# ['idea', '千峰培训', '学校实习']

# ['03_modulepy', '04_模块导入py', '05_ospy', '20201222testspy', 'a01_module1py', 'a02_module2py', '__pycache__']

import os

print(osenviron)

print(osenviron["PATH"])

import os

import string  # 字符串模块

import random

files = "testjpg"

#  01获取文件的后缀

surffix = ospathsplitext(files)[-1]

# print(surffix)  # jpg

# 02生成所有大小写字母的列表

res = list(stringascii_letters)

# print(stringascii_letters)

# 运行结果;abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

#  03将0-9添加到res中

for i in range(0, 10):

    resappend(str(i))

# 04随机生成文件名:

mystr = ""join(randomsample(res, 10))  #  sample随机生成10个字符

# print(mystr)

# bJpED6dj2Y

# 05将文件名和后缀拼接

print(mystr+surffix)

import sys

print(syspath)

res = sysstdin

print(res)

import math

# print(mathpi)  # 3141592653589793

print(mathfactorial(5))  # 120

# 幂运算 第一个参数是底数 第二个参数是幂

print(mathpow(2, 3))  # 80

# 向上取整和向下取整

print(mathfloor(15999))  # 15

print(mathceil(15001))  # 16

# 四舍五入

print(round(12351, 1))  # 1235

# 三角函数

print(mathsin(mathpi / 6))  # sin(pi/6) 049999999999999994

print(mathcos(mathpi / 3))  # sin(pi/3) 05000000000000001

print(mathtan(mathpi / 4))  # sin(pi/6) 09999999999999999

# 开方

a = 9

b = 16

print(mathsqrt(a+b))  # 50

# 以e为底的指数函数

print(mathexp(a))

#  8103083927575384

import random

# 01random()  随机生成[0,1)之间的数  前闭后开

print(randomrandom())  # 生成[0,1)之间的小数

# 02randint() 生成范围内的随机整数        全闭

print(randomrandint(10, 20))  # 生成[10,20]之间的整数

# 03randrange() 生成范围内的随机整数      前闭后开

print(randomrandrange(10, 20))  # 生成[10,20)之间的整数

# 04choice  参数是列表  随机从列表中取一个  取一次

print(randomchoice([1, 2, 3, 4, 5, 6, 77, 8, 9]))

# 05sample 的第一个参数 必须是一个可迭代对象

#          第二个参数代表着从可迭代对象从随机选取几个,选取的对象不能重复

print(""join(randomsample(["a", "b", "c", "d"], 3)))

import datetime as dt # 引入datetime 模块并将其命别名为dt

import time

import calendar  # 引入日历模块

# 01datetime模块

# 001获取当前时间的具体信息

print(dtdatetimenow()) 

# 运行结果:

# 2020-12-26 15:36:36408129

# 年    月 日  时 分 秒  毫秒

# 002创建日期

print(dtdate(2020,1,1)) 

# 年月日  2020-01-01

# 003创建时间

print(dttime(16,30,30))

# 时 分 秒:  16:30:30

# 004timedelta() 括号中的默认参数是天

print(dtdatetimenow()+dttimedelta(3))  # 2020-12-25 15:50:15811738

print(dtdatetimenow()+dttimedelta(hours=3))  # 2020-12-22 18:51:41723093

print(dtdatetimenow()+dttimedelta(minutes=10))  # 2020-12-22 16:01:41723093

# 02time

# 001当前时间的时间戳

# 时间戳是指从1970—01-01 0:0:0到现在的秒数 utc时间 也叫格林尼治时间 

print(timetime())

# 002按照指定格式输出时间

# print(timestrftime("%Y-%m-%d %H:%M:%S"))  # 2020-12-22 15:57:49

# 时间格式:

# %Y  Year with century as a decimal number

# %m  Month as a decimal number [01,12]

# %d  Day of the month as a decimal number [01,31]

# %H  Hour (24-hour clock) as a decimal number [00,23]

# %M  Minute as a decimal number [00,59]

# %S  Second as a decimal number [00,61]

# %z  Time zone offset from UTC

# %a  Locale's abbreviated weekday name

# %A  Locale's full weekday name

# %b  Locale's abbreviated month name

# %B  Locale's full month name

# %c  Locale's appropriate date and time representation

# %I  Hour (12-hour clock) as a decimal number [01,12]

# %p  Locale's equivalent of either AM or PM

# 003ctime 和 asctime 时间格式  输出的时间格式一样,

# print(timeasctime())  # Tue Dec 22 15:57:49 2020

# print(timectime())  # Tue Dec 22 15:58:35 2020

# 004sleep()  时间休眠

print("我负责浪")

print(timesleep(3))

print("你负责漫")

# 005calender 生成日历

res = calendarcalendar(2021)  # 生成2021年的日历

print(res)

# 006判断是否为闰年

print(calendarisleap(2020))  # True

# 007从1988年 到 2020年有多少个闰年

print(calendarleapdays(1988, 2020))  # 8

Date类大多已过时,要用Calender替代

Calender c=CalendergetInstance();

Date d=cgetTime();//这个相当于new Date(),当前日期

昨天的日期:

cadd(CalenderDAY_OF_MONTH,-1);

Date d=cgetTime();

明天的日期:

cadd(CalenderDAY_OF_MONTH,1);

Date d=cgetTime();

上个月的日期:

cadd(CalenderMONTH,-1);

Date d=cgetTime();

去年的日期:

cadd(CalenderYEAR,-1);

Date d=cgetTime();

单独获取年、月、日、小时等:

int year=cget(CalenderYEAR);

int month=cget(CalenderMONTH);

int day=cget(CalenderDAY_OF_MONTH);

int hour=cget(CalenderHOUR_OF_DAY);//这个是24小时制

int hour=cget(CalenderHOUR);//这个是12小时制

计算两个日期间的天数

SimpleDateFormat df=new SimpleDateFormat(“yyyy-MM-dd”);

Date date1=dfparse(“2014-02-02”);

Date date2=dfparse(“2014-01-02”);

Longdays=(date1getTime()-date2getTime)/(2460601000)

第一种方法:

package cnywtest;

import javatextSimpleDateFormat;

import javautilDate;

public class DateTest {

public static void main(String[] args){

Date today = new Date();

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

formatformat(today);

/输入日期/

Systemoutprintln(formatformat(today));

String datetime = formatformat(today);

//输入年

String year = datetimesubstring(0, datetimeindexOf("-"));

Systemoutprintln(year);

//输出月

String month = datetimesubstring(datetimeindexOf("-")+1, datetimelastIndexOf("-"));

Systemoutprintln(month);

//输出日

String day = datetimesubstring(datetimelastIndexOf("-")+1, datetimelength());

Systemoutprintln(day);

}

}

第二种方法:

Date today = new Date();

long time = todaygetTime();

Calendar calendar = CalendargetInstance();

calendarsetTimeInMillis(time);

//输出年

Systemoutprintln(calendarget(CalendarYEAR));

//输出月 :由于月份是从0开始的所以要加上1

Systemoutprintln(calendarget(CalendarMONTH+1));

//输出日

Systemoutprintln(calendarget(CalendarDAY_OF_MONTH));

希望能够帮助你解决问题

以上就是关于java中如何获取某个日期是当月的最后一天全部的内容,包括:java中如何获取某个日期是当月的最后一天、java时间加减、java中的getActualMaximum()方法用法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9649615.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存