根据某年某月某日获得这一天是星期几之Java篇

本文介绍了一个实用的Java工具类,该工具类可以根据输入的日期字符串(格式为YYYY-MM-DD),返回该日期对应的星期名称。文章提供的代码示例展示了如何使用简单的算法计算日期对应的星期,并提供了完整的类实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


package com.xcl.common.util;

public class DateUtil {

/**
* 根据 年月日,获得这一天是星期几
*
* 如: 根据2010-07-20 ,得到这天是星期二
*/
public static String getWeekByYMD(String dateStr, String regix)
throws Exception {
String[] arr = dateStr.split(regix);

int uYear = Integer.parseInt(arr[0], 10);
int uMonth = Integer.parseInt(arr[1], 10);
int uDay = Integer.parseInt(arr[2], 10);
int a = (14 - uMonth) / 12;
int y = uYear - a;
int m = uMonth + 12 * a - 2;
int d = (uDay + y + y / 4 - y / 100 + y / 400 + 31 * m / 12) % 7;
String[] week = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
return week[d];
}
}




public static void main(String[] args) {
String dateStr = "2010-07-20";
System.out.println(getWeekByYMD(dateStr, "-"));
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值