问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java中如何获取日期时间中的星期几?

发布网友 发布时间:2022-04-11 17:22

我来回答

7个回答

热心网友 时间:2022-04-11 18:51

1、取得指定日期是星期几
取得指定日期是星期几可以采用下面两种方式取得日期是星期几:
a、使用Calendar类
//根据日期取得星期几
public static String getWeek(Date date){
String[] weeks = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int week_index = cal.get(Calendar.DAY_OF_WEEK) - 1;
if(week_index<0){
week_index = 0;
}
return weeks[week_index];
}
b、使用SimpleDateFormat类
//根据日期取得星期几
public static String getWeek(Date date){
SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
String week = sdf.format(date);
return week;
}
注:格式化字符串存在区分大小写
对于创建SimpleDateFormat传入的参数:EEEE代表星期,如“星期四”;MMMM代表中文月份,如“十一月”;MM代表月份,如“11”;
yyyy代表年份,如“2010”;dd代表天,如“25”
2、取得日期是某年的第几周
根据日期入得日期是某年的第几周。
//取得日期是某年的第几周
public static int getWeekOfYear(Date date){
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int week_of_year = cal.get(Calendar.WEEK_OF_YEAR);
return week_of_year;
}
3、得到某年的某个月有多少天
已知年份和月份,取得该月有多少天。
//取得某个月有多少天
public static int getDaysOfMonth(int year,int month){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month-1);
int days_of_month = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
return days_of_month;
}
4、取得两个日期之间的相差多少天
已知两个日期,计算它们之间相差多少天。
// 取得两个日期之间的相差多少天
public static long getDaysBetween(Date date0, Date date1) {
long daysBetween = (date0.getTime() - date1.getTime() + 1000000) / 86400000;// 86400000=3600*24*1000 用立即数,减少乘法计算的开销
return daysBetween;
}

热心网友 时间:2022-04-11 20:09

这个只能自己编写代码,显示样式可以根据自己的喜好设定。
实现此功能有很多方法,下面仅给一个例子,希望对你有帮助。

/** * 获取指定日期是星期几
* 参数为null时表示获取当前日期是星期几
* @param date
* @return
*/
public static String getWeekOfDate(Date date) {
String[] weekOfDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
Calendar calendar = Calendar.getInstance();
if(date != null){
calendar.setTime(date);
}
int w = calendar.get(Calendar.DAY_OF_WEEK) - 1;
if (w < 0){
w = 0;
}
return weekOfDays[w];
}

调用方法如下,看你怎么用了

public static void main(String[] args){
//今天是2015-10-19 星期一
String weekOfDate = null; //参数为null时表示获取当前日期是星期几
weekOfDate = getWeekOfDate(null);
System.out.println(weekOfDate);
//输出 星期一

Date date = new Date();
date.setDate(18); //指定日期也可以
weekOfDate = getWeekOfDate(date);
System.out.println(weekOfDate);
//输出 星期日
}

热心网友 时间:2022-04-11 21:44

利用java.util类中的Calendar c=Calendar.getInstance();
这个方法来试试。具体就是 比如要获得年 int year; year=c.get(Calendar.YEAR);
你可以试试,

热心网友 时间:2022-04-11 23:35

Calendar cal = Calendar.getInstance();

int weekday = cal.get(Calendar.DAY_OF_WEEK);

热心网友 时间:2022-04-12 01:43

我的方法:
Date date = new Date(Calendar.DAY_OF_WEEK);
Calendar cal = new GregorianCalendar();

cal.setTime(date);
cal.get(Calendar.DAY_OF_WEEK);
题主,为什么不用Date?分享一下。

热心网友 时间:2022-04-12 04:08

网页链接 日期工具类,可以根据传递参数获得系统当天、前n天、后n天的星期,也可以根据具体日期查看是星期几

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 c++获取星期几 你好,我在sql2005安装连接后,(win7 64位操作系统环境)数据库引擎下面没东西,怎么解决? 不知道我的windows7旗舰版32位操作系统是否与SQLserver2005兼容? 如何查找sqlserver的sa密码 用sqlserver 怎样查询出 数据表里 某月上班连续打卡15天的人 关于sqlserver 的一个查询, 解决再加50分 sql语句执行过程中会解析成二进制位被计算机识别吗?在哪一个阶段被解析的? sql语句执行原理 怎样sql server 2008中数据库备份压缩 关于ldf日志文件大小如何减少 SQL Server 2000 中数据库文件如何压缩啊? sql语句查询较慢时,应该怎么样分析? ACCESS中,有没有SQL语句查询获得表名和字段名 sql sever 查找数据里都有那些符号 如何在sql数据库中查找触发器的代码 求一个SQL触发器代码 SQL中如何查看触发器的原代码? SQL 图书馆系统数据库触发器代码 SQL的触发器源代码 谢谢了 read by other session与逻辑读高的SQL有关系吗? java怎样通过日期获取星期几? 怎样获取一年所有的星期六星期天 有哪种日历星期几上面含名称代码 易语言如何获得今天星期几? 给星期一到星期五各取一个名字 求MySQL数据库分页存储过程以及winform前台调用例子 求Mysql数据库的翻页存储过程例子 SQL2012此数据库没有有效所有者,因此无法安装数据库关系图支持对象。 sqlserver2005,打开数据库关系图时,提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。 SQL2005数据库的所有者可以更改的吗? 我主要是那里面的关系库数据图没办法用。 创建数据库关系,此数据库缺少一个或多个使用数据库关系图所需要的支持对象, VS2008和SQL2008连接时有两种身份登录,我想以SQL SERVER身份登录,可是登录名和密码应该写什么呀? 怎么把数据库所有者设置为有效登录名 SQL server 2012中给数据库创建数据库关系图时出现这样的错误,该如何解决 无法安装SQL数据库 我安装数据库的时候,,提示没有权限、、最后有这样几个没有装成功 SQL2008R2 不支持用该后端版本设计数据库关系图或表,该怎么处理 (电脑问题)此Installer数据库含了安装····所需的逻辑和数据。已停止工作 Access中打开一个数据库,系统提示“没有使用*.mdb对象的必要权限。请让系统管理员或安装此程序的人设置权 Linux安装Oracle数据库时,快最后一步时候,有效用户ID与文件的所有者不匹配,跪求解决办法