精华内容
下载资源
问答
  • java获取当天星期

    万次阅读 2019-05-12 12:28:10
    简单粗暴的两种方法 1、自己写一个方法获取日期... * 获取当前日期是星期几<br> * * @param dt * @return 当前日期是星期几 */ public static String getWeekOfDate(Date dt) { String[] weekDays = {...

     简单粗暴的两种方法

    1、自己写一个方法获取日期 取余

     /**
         * 获取当前日期是星期几<br>
         * 
         * @param dt
         * @return 当前日期是星期几
         */
        public static String getWeekOfDate(Date dt) {
            String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
            Calendar cal = Calendar.getInstance();
            cal.setTime(dt);
            int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
            if (w < 0)
                w = 0;
            return weekDays[w];
        }
    

    2、对于创建SimpleDateFormat传入的参数:EEEE代表星期,如“星期五”;MMMM代表中文月份,如“十一月”;MM代表月份,如“10”;
    yyyy代表年份,如“2017”;dd代表天,如“28”

    注意  注意  注意  :  区分大小写!!!!
     

      Date date=new Date();
       SimpleDateFormat dateFm = new SimpleDateFormat("EEEE");
       dateFm.format(date);
    

    在开发中经常会使用到一些日期方面的操作,下面例子展示几个常用的操作。

    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;
    	}
    


    5、完整的测试代码

    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;
    	}
     
    	// 取得两个日期之间的相差多少天
    	public static long getDaysBetween(Date date0, Date date1) {
    		long daysBetween = (date0.getTime() - date1.getTime() + 1000000) / 86400000;// 86400000=3600*24*1000  用立即数,减少乘法计算的开销
    		return daysBetween;
    	}
     
    }
    


    6、测试结果
     

    7、引出的问题
    看下面的代码:

    public static void main(String[] args) throws Exception{
        String strDate = "999-999-999";// 定义日期字符串
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");// 定义日期格式
        Date date = null;
    try {
        date = format.parse(strDate);// 将字符串转换为日期
    } catch (ParseException e) {
        System.out.println("日期格式有误,请给出正确的日期格式");
        return;
    }
        System.out.println(format.format(date)); 
    }
    


    Java中使用yyyy-MM-dd日期格式进行转换,转换字符串为999-999-999时,没有出现异常,反倒是执行通过了。

    运行结果:1084-11-23

    解决办法如下:

    在date = format.parse(strDate)前面加上format.setLenient(false)就行了。意思是【指定日期/时间解析是否不严格。进行不严格解析时,解析程序可以使用启发式的方法来解释与此对象的格式不精确匹配的输入。进行严格解析时,输入必须匹配此对象的格式。 】
    --------------------- 
     

    展开全文
  • 源码: ... import java.text.SimpleDateFormat; import java.util.Calendar;...import java.util.Date...//获取时间 public class Test { public static void main(String[] args) { //1.获取当天星期几 Scanner sc=ne

    源码:

    package com.yzx.demo;
    
    
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.Scanner;
    
    //获取时间
    public class Test {
        public static void main(String[] args) {
            //1.获取当天星期几
            Scanner  sc=new Scanner(System.in);
            Calendar c=Calendar.getInstance();
    
            SimpleDateFormat  sdf=new SimpleDateFormat("EEEE");
            String  week=sdf.format(c.getTime());
            System.out.println("当前为:"+week);
    
    
            //获取当前日期
            System.out.println(new Date());
            SimpleDateFormat  sdf1=new SimpleDateFormat("yyyy-MM-dd  hh:mm:ss");
            String  date=sdf1.format(new Date());
            System.out.println("当前日期时间为:"+date);
    
        }
    }

    运行结果:

     

    展开全文
  • 文章目录1.使用SimpleDateFormat2....import java.text.SimpleDateFormat; import java.util.Date; public class Test { public static void main(String[] args) throws Exception { Date date = new Date()

    1.使用SimpleDateFormat

    实现代码:

    package com.gx.util;
    
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class Test {
    	public static void main(String[] args) throws Exception {
    		Date date = new Date();
    		SimpleDateFormat str = new SimpleDateFormat("E");
    		String week = str.format(date);
    		System.out.println(week);
    	}
    }
    

    实现效果:

    星期六
    

    2.使用Calendar类

    实现代码:

    package com.gx.util;
    
    import java.util.Calendar;
    
    public class Test {
    	public static void main(String[] args) throws Exception {
    		String[] weekDays = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
    		Calendar cal = Calendar.getInstance();
    		int week = cal.get(Calendar.DAY_OF_WEEK) - 1;
    		System.out.println(weekDays[week]);
    	}
    }
    

    实现效果:

    星期六
    

    3.拓展

    实现代码:

    package com.gx.util;
    
    import java.util.Calendar;
    
    public class Test {
    	public static void main(String[] args) throws Exception {
    		String week = "";
    		Calendar c = Calendar.getInstance();
    		int weekday = c.get(Calendar.DAY_OF_WEEK);
    		if (weekday == 1) {
    			week = "星期日";
    		} else if (weekday == 2) {
    			week = "星期一";
    		} else if (weekday == 3) {
    			week = "星期二";
    		} else if (weekday == 4) {
    			week = "星期三";
    		} else if (weekday == 5) {
    			week = "星期四";
    		} else if (weekday == 6) {
    			week = "星期五";
    		} else if (weekday == 7) {
    			week = "星期六";
    		}
    		System.out.println(week);
    	}
    }
    

    实现效果:

    星期六
    

    注意:

    EEEE代表星期(可以简写E),如“星期六”;
    MMMM代表中文月份,如“七月”;
    MM代表月份(可以简写M,假如当月是个位数,则前面补0),如“07”;
    M代表月(假如当月是个位数,则前面不会补0),如“7”;
    yyyy代表年份(可以简写y),如“2020”;
    dd代表日(可以简写d,假如当天是个位数,则前面补0),如“05”;
    d代表日(假如当天是个位数,则前面不会补0),如“5”;

    展开全文
  • java日期时间工具类超级全。其中包含:获得当前日期 yyyy-MM-dd HH:mm:ss;获取系统当前时间戳;获取当前日期 yy-MM-dd;得到两个时间差 格式yyyy-MM-dd HH:mm:ss;转化long值的日期为yyyy-MM-dd HH:mm:ss.SSS格式的...
  • Java获取本周一、上周一、下周一时间Java获取本周一、上周一、下周一时间Java获取本周一、上周一、下周一时间Java获取本周一、上周一、下周一时间
  • java获取一段时间有几个星期

    千次阅读 2018-08-22 19:10:57
    出于项目需求,自己做的笔记 ---------- import java.text.... * 给定时间段和星期几,计算该时间段内共有多少个给定的星期几 * @param start 开始时间,格式yyyy-MM-dd * @param end 结束时间,格式yyyy-MM-d...
    
    出于项目需求,自己做的笔记
    ----------
    import java.text.DateFormat;
    import java.util.Calendar;
    /**
           * 给定时间段和星期几,计算该时间段内共有多少个给定的星期几
           * @param start 开始时间,格式yyyy-MM-dd
           * @param end 结束时间,格式yyyy-MM-dd
           * @param a 星期几,从星期一到星期天,分别用数字1-7表示
           * @return 星期几统计数
           */
          private long weekend(String start,String end,int a){
              DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
              long sunDay = 0;//计数
              try{
                  Calendar startDate = Calendar.getInstance(); //开始时间
                  startDate.setTime(format.parse(start));
    
                  Calendar endDate = Calendar.getInstance();//结束时间
                  endDate.setTime(format.parse(end));
    
                  int SW = startDate.get(Calendar.DAY_OF_WEEK)-1;//开始日期是星期几
                  int EW = endDate.get(Calendar.DAY_OF_WEEK)-1;//结束日期是星期几
    
                  long diff = endDate.getTimeInMillis()-startDate.getTimeInMillis();   
                  long days = diff / (1000 * 60 * 60 * 24);//给定时间段内一共有多少天
                  long w = Math.round(Math.ceil(((days+SW+(7-EW))/7.0)));//给定时间内,共有多少个星期
                  sunDay = w;//总的星期几统计数
                  if(a<SW)//给定的星期几小于起始日期的星期几,需要减少一天
                      sunDay--;
                  if(a>EW)//给定的星期几大于结束日期的星期几,需要减少一天
                      sunDay--;
              }catch(Exception se){
                  se.printStackTrace();
              }
              return sunDay;
          } 
    展开全文
  • java8 LocalDate 根据时间获取星期

    千次阅读 2019-05-17 09:36:30
    获取当前星期几 String[][] strArray = {{"MONDAY", "一"}, {"TUESDAY", "二"}, {"WEDNESDAY", "三"}, {"THURSDAY", "四"}, {"FRIDAY", "五"}, {"SATURDAY", "六"}, {"SUNDAY", "日"}}; LocalDate currentDate = ...
  • Java8 获取当前日期时间星期

    万次阅读 2018-11-26 12:49:44
    * 描述 获取当前日期 格式:(yyyy-MM-dd hh:mm:ss) * * @param * @return String * @author *** * @date 2018/11/26 10:33 */ public static String getCurrentFullTime() { return LocalDateTime.now()....
  • java时间操作工具类,已封装好,包含获取某一时间的年,月,日,星期。以及对某一时间进行年,月,日,周的加减。还有获取某一时间年,月,日,周的起始和结束时间等等
  • java获取今天、昨天、近一周、近两周、近三周、近一月、近两月、近三月、近半年、本周、上周、本月、上月时间
  • java获取时间段内的所有星期

    千次阅读 2020-01-07 11:27:23
    前言: 最近有个功能需要用到对于时间的操作,网上有个不错的文章,如上贴出,小编稍微改了点代码,在此对原...传入开始时间 结束时间 星期一,即可得出这段时间有几个星期一,将时间列出。 代码: pack...
  • * 根据日期获取指定日期 * dateString----String类型的时间 * gs----需要转换的格式 * */ public static String getDate(String dateString,String gs) throws ParseException { SimpleDateFormat formatter = ...
  • Java获得当前日期是星期

    万次阅读 2017-07-05 09:34:24
    * 获取当前日期是星期几 * * @param date * @return 当前日期是星期几 */ public String getWeekOfDate(Date date) { String[] weekDays = { "星期日", "星期一", "星期二", "星期三", "星期四", ...
  • JAVA获取根据当前时间判断是星期

    千次阅读 2020-03-09 22:29:14
    if (weekday == 1) { week = "星期日"; } else if (weekday == 2) { week = "星期一"; } else if (weekday == 3) { week = "星期二"; } else if (weekday == 4) { week = "星期三"; } else if (weekday == 5) { ...
  • /** * 校验传入的星期日期是否是... String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"}; try { //如果是北京时间时区设置GMT+8 TimeZone.setDefault(TimeZon
  • 1、创建测试类(DateTest4.java) package com.jeff; import java.text.SimpleDateFormat; import java.util.Calendar; public class DateTest4 { public static void main(String[] args) { Calendar c = ...
  • java根据日期获取当前是星期

    千次阅读 2020-12-01 21:02:51
    * 根据日期获取当前是星期几 */ public static void main(String[] args) throws ParseException { String dates = "2020-12-1"; Calendar cal = Calendar.getInstance(); SimpleDateFormat f = new ...
  • *获取今天是星期几 * @return */ public static Integer getDayOfWeek(){ Calendar calendar = Calendar.getInstance(); return calendar.get(DAY_OF_WEEK) - 1; } /** * 获取指定时间戳是星期几 * @...
  • JAVA获取指定日期时间对应的星期

    千次阅读 2018-06-01 11:16:30
     "星期日",  "星期一",  "星期二",  "星期三",  "星期四",  "星期五",  "星期六"  };  Calendar cal = Calendar.getInstance();  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  try {  ...
  • 根据日期获取当前日期的星期 根据日期日期获取日期 /** * 获取日期间日期 * @param start * @param end * @return */ private static List<Date> getBetwe...
  • 1、根据时间戳 获得 星期几(转自:https://blog.csdn.net/u010194271/article/details/51496398) 根据自身实际需要,我有稍作更改。 import java.util.Calendar; public final class CalendarUtils { /** *...
  • 主要学习Java语句中的switch语句: 注意事项: 1、了解swtich语句 2、注意包名类名的命名 代码如下: package switch语句; import java.util.Calendar; public class Ex_5{ public static void main(String[] ...
  • Java获取时间&时间格式化最全总结

    千次阅读 2020-09-30 09:04:56
    最近遇到很多在Java获取当前时间的问题,有的要求五花八门的,今天总结一下在Java获取时间的方法和时间输出的格式化。
  • 获取当前日期、获取当前时间获取指定格式的日期时间、时间戳 代码如下,复制粘贴改包名即可使用, package com.llw.util; import java.text.ParseException; import java.text.SimpleDateFormat; import java....
  • * 根据日期获取星期 * @param args */ public static void main(String[] args) { Calendar calendar = Calendar.getInstance(); Date date = calendar.getTime(); String week = dateToWeek(date) ...
  • //根据日期获取星期 hmPlanBean.setWeekDay(WeekDayUtils.getWeekOfDate(hmPlanBean.getPlantTime())); Map, Object> hmPlanMap = new HashMap, Object>(); hmPlanMap.put("hmPlanBean", hmPlanBean); ...
  • Java获取当前时间是周几

    万次阅读 2017-06-14 13:56:11
     * 获取当前日期是星期几  *   * @param dt  * @return 当前日期是星期几  */  public static String getWeekOfDate(Date dt) {  String[] weekDays = {"星期日", "星期一", "星期
  • 根据日期获取当天是周几 /** * 根据日期获取当天是周几 * @param datetime 日期 * @return 周几 */ public static String dateToWeek(String datetime) { SimpleDateFormat sdf = new SimpleDateFormat(...
  • java获取当前本地日期时间

    万次阅读 2018-06-10 12:16:04
    方法一 ...import java.text.*; import java.util.*; public class HelloDate{ public static void main(String[] args){ Date date = new Date(); /* * DateFormat.getDateInstance()为获...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 45,669
精华内容 18,267
关键字:

java获取时间星期数

java 订阅