新浦京网投站网止,澳门新浦京26999com

    欢迎访问澳门新浦京26999com~

  1. 加入收藏
  2. 设为主页
  3. 学校简介

三分钟了解北大青鸟

×
  • 北大青鸟大数据课程
  • 北大青鸟网络工程师
  • 北大青鸟web设计专业
  • 北大青鸟PHP专业
  • 北大青鸟启蒙星课程

JAVA中获取指定星期及其他日期

责任编辑:澳门新浦京26999com来源:澳门新浦京26999comJava技术教程发布时间:2013-03-08 10:05
导读:在开发中经常会使用到一些日期方面的操作,下面例子展示几个常用的操作。
在开发中经常会使用到一些日期方面的操作,下面例子展示几个常用的操作。
1、取得指定日期是星期几
取得指定日期是星期几可以采用下面两种方式取得日期是星期几:
a、使用Calendar类
[java]
//根据日期取得星期几
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类
[java]
//根据日期取得星期几
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、取得日期是某年的第几周
根据日期入得日期是某年的第几周。
[java]
//取得日期是某年的第几周
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、得到某年的某个月有多少天
已知年份和月份,取得该月有多少天。
[java]
//取得某个月有多少天
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、取得两个日期之间的相差多少天
已知两个日期,计算它们之间相差多少天。
[java]
<pre name="code" class="java">// 取得两个日期之间的相差多少天
public static long getDaysBetween(Date date0, Date date1) {
long daysBetween = (date0.getTime() - date1.getTime() + 1000000) / 86400000;// 86400000=3600*24*1000 用立即数,减少乘法计算的开销
return daysBetween;
}</pre>
<pre></pre>
<pre></pre>
<pre></pre>
<pre></pre>
5、完整的测试代码
[java]
package org.ml.test;
 
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
 
public class CalendarDemo {
public static void main(String[] args) {
String strDate = "2013-03-08";// 定义日期字符串
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");// 定义日期格式
Date date = null;
try {
date = format.parse(strDate);// 将字符串转换为日期
} catch (ParseException e) {
System.out.println("输入的日期格式不合理!");
}
System.out.println(strDate + "是:" + getWeek(date));
System.out.println(strDate + "是一年的第:" + getWeekOfYear(date) + "周");
System.out.println(strDate + "是一年的" + (date.getMonth() + 1) + "月有:"
+ getDaysOfMonth(date.getYear(), date.getMonth() + 1) + "天");
System.out.println(strDate + "距离" + (format.format(new Date())) + "还有"
+ getDaysBetween(date, new Date()) + "天");
 
}
 
// 根据日期取得星期几
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];
SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
String week = sdf.format(date);
return week;
}
 
// 取得日期是某年的第几周
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;
}
 
// 取得某个月有多少天
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;
} www.2cto.com
 
// 取得两个日期之间的相差多少天
public static long getDaysBetween(Date date0, Date date1) {
long daysBetween = (date0.getTime() - date1.getTime() + 1000000) / 86400000;// 86400000=3600*24*1000 用立即数,减少乘法计算的开销
return daysBetween;
}
 
}
6、测试结果

本文标题:JAVA中获取指定星期及其他日期,责任编辑:澳门新浦京26999com,来源:武汉宏鹏,于2013年03月08日10时05分发布于澳门新浦京26999com。新浦京网投站网止宏鹏鲁广校区,是北大青鸟武汉电脑学校,专业IT计算机培训,拥有软件/网络/安卓/Web前端/Java课程.北大青鸟地址:光谷广场鲁巷数码港.电话:027-87807717

专业老师指导

赵老师

从事IT教育培训十年有余,致力于帮助广大学子找到适合自己的专业。

培训咨询客服

刘老师

IT培训专业客服,用自己的真诚解决了无数学子的困惑。

本文地址:
文章标题:
  • 北大青鸟Java软件开发
  • 北大青鸟UI设计课程_零基础可学
  • 北大青鸟动漫设计_武汉设计学校
  • 北大青鸟数字艺术_武汉电脑学校
×
在线咨询更多问题

如您有任何疑问
在线咨询随时为您解答或拨打咨询热线:17740513250

×
  • 姓 名*
  • 手 机*
  • QQ号/微信号
  • 所报学科 *
  • 其他备注
  • 温馨提示:请保持手机畅通,咨询老师将为您提供专属的一对一报名服务。