Java的Date里,加天数的时候怎么忽略星期六和星期天?

问题描述

Java的Date里,加天数的时候怎么忽略星期六和星期天?最近工作中遇到这个问题,我看了Java的API,和common.lang工具包,都没有相应的方法,请各位高手指教一下。万分感谢

解决方案

解决方案二:
把你的例子跟结果发上来
解决方案三:
例如加100天,就在循环里加100次1天,在循环里过滤掉周六周日就可以了。
解决方案四:
不要什么都总想要去找到现成的方法,花了时间却还没解决,很简单的循环就可以解决的问题。
解决方案五:
动用一下你的数学脑细胞
解决方案六:
3楼说的很对呀,要想有大的提高,得多看源代码,也要多思考,当你觉得源代码无法满足你的要求时,你就对源代码进行修改或重写,这时候你不但有成就感,也表明你开始登堂入室了。
解决方案七:
java.util.Calendar日历类里面不是有获取星期几的方法?写个ifelse不会?
解决方案八:
你去data里面找当然一个毛都没有
解决方案九:
Calendar.getInstance().get(Calendar.DAY_OF_WEEK)==Calendar.THURSDAY今天是否为星期四建议楼主学些下JDK不会没关系回查就行
解决方案十:
获取当前基本日期是星期几,根据增加天数算出其中有多少个周六和周日,就可以了。当天为周一(记C=1)至周五(记C=5),增加I=11天,实际需要增加I+{[(C+I)-1]div5}*2,即:11+(11div5)*2=11+2*2=15,则实际需要增加15天。(div表示整除运算)当天为周日,记C=0,使用上面的公式。当天为周六,公式:I+[(I-1)div5]*2+1。若增加6天,即:6+[(6-1)div5]*2+1=6+3=9,即实际加上9天即可。
解决方案十一:
前面有人提到用循环,实际上没有必要,循环是O(N)的效率。因为每周的天数是固定的,只要知道基础日期是星期几,就可以直接计算增加的天数当中有多少个周六周日,需要增加的天数再加上这些天数就是了,这样可以达到O(1)的效率。
解决方案十二:
packagedate;importjava.text.DateFormat;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;publicclassTest{publicstaticDateFormatformat=newSimpleDateFormat("yyyy-MM-dd");publicstaticvoidmain(String[]args)throwsException{Dateweekend=format.parse("2011-01-21");Dateworkday=format.parse("2011-01-13");System.err.println(format.format(addWorkingDays(weekend,1)));System.err.println(format.format(addWorkingDays(workday,9)));}/***增加工作日(休息日周五周六...别扭..)**@paramdays*@return*/publicstaticDateaddWorkingDays(DatestartDate,intdays){Calendarcalendar=Calendar.getInstance();calendar.setTime(startDate);if(calendar.get(Calendar.DAY_OF_WEEK)>5){calendar.add(Calendar.DAY_OF_WEEK,Calendar.DAY_OF_WEEK-calendar.get(Calendar.DAY_OF_WEEK));}if(days>5-calendar.get(Calendar.DAY_OF_WEEK)){intremainingDays=5-calendar.get(Calendar.DAY_OF_WEEK);days-=remainingDays;calendar.add(Calendar.DAY_OF_WEEK,remainingDays);intweeks=days/5;if(weeks%5!=0){weeks++;}calendar.add(Calendar.DAY_OF_WEEK,days+weeks*2);}else{calendar.add(Calendar.DAY_OF_WEEK,days);}returncalendar.getTime();}}

循环可能是有必要的因为说不定有些时候需要设置指定的天数为休息不过如果仅仅是算周六周日的话应该是没问题的
解决方案十三:
对不起即使指定特殊天数也不用循环代码随后奉上。。不过应该先完成工作的说..

时间: 2024-09-28 01:38:42

Java的Date里,加天数的时候怎么忽略星期六和星期天?的相关文章

Java中Date类和Calendar类的常用实例小结_java

前言写后台程序的时候,经常需要存储当前服务器的时间戳,使用时间戳也很方便,客户端和服务器端都可以根据自己的需求做各自的转换 在php里,获取当前时间戳使用time()函数,格式化输出通过Date()函数即可,Java里相对复杂一些,这里简单介绍一下 Java语言中的Calendar,Date,DateFormat组成了Java标准的一个基本但是非常重要的部分.日期是商业逻辑计算一个关键的部分,所有的开发者都应该能计算未来的日期,定制日期的显示格式,并将文本数据解析成日期对象 获取UNIX时间戳在

Java中Date和Calendar常用方法_java

在java中用到的最多的时间类莫过于 java.util.Date了, 由于Date类中将getYear(),getMonth()等获取年.月.日的方法都废弃了,所以要借助于Calendar来获取年.月.日.周等比较常用的日期格式 注意:以下代码均已在jdk1.6中测试通过,其他版本可能使用不同,请注意!  Date与String的互转用法 /** * Date与String的互转用法,这里需要用到SimpleDateFormat */ Date currentTime = new Date()

学习Java的Date、Calendar日期操作_java

本文介绍了Java开发过程中日期相关操作,分享的代码如下: package jse; import java.io.UnsupportedEncodingException; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Locale; /** * 常用日期操作 * * @a

HV000030: No validator could be found for type: java.util.Date.

问题描述 也照着demo写了个StringToDateConverter implements Converter<String, Date>,xml也跟着配置了,bean类如下public class SearchBookableRoom {@NotBlank(message="开始日期必须指定")@Future(message="不支持当前指定的开始时间")@DateTimeFormat(pattern="yyyy-MM-dd HH:mm&

java获取Date时间的各种方式汇总_java

java获取Date时间的各种方式为大家分享如下 常用的时间获取方式 public class DateUtils { /** * 获取时间戳 * 输出结果:1438692801766 */ @Test public void getTimeStamp() { Date date = new Date(); long times = date.getTime(); System.out.println(times); //第二种方法: new Date().getTime(); } /** *

java创建Date日期时间笔记

(1)public Date() 创建的日期类对象的日期时间被设置成创建时刻相对应的日期时间. 例: Java代码  1.Date today=new Date();  //today被设置成创建时刻相对应的日期时间.    (2)public Date (long date) long 型的参数date可以通过调用Date类中的static方法parse(String s)来获得. 例: Java代码  1.long l=Date.parse("Mon 6 Jan 1997 13:3:00&q

Java高级之虚拟机加载机制

Jvm要加载的是二进制流,可以是.class文件形式,也可以是其他形式,按照它加载的标准来设计就不会有太大问题. 以下主要就机制和标准两个问题分析一番: 首先来Java类文件的加载机制 ,跟变量的加载机制类似,它先把Class文件加载入内存,再对数据进行验证.解析和初始化,最终形成虚拟机可以直接使用的Java类型.由于Java是采用JIT机制,所以加载时会比较慢,但优点也明显,具有高度灵活性,支持动态加载和动态连接. 接下来就讲讲类的加载过程: 一个类加载的基本过程是按照下面的顺序 来,但也有不

android java 继承父类里的子类问题!!!!!!!

问题描述 android java 继承父类里的子类问题!!!!!!! 请问各位,java可以继承父类的方法和全部属性,那父类里的子类可以继承使用么? android 可以继承父类的Handler.广播么??

graphics- 请问 java如何给文字加阴影效果(黑边框)

问题描述 请问 java如何给文字加阴影效果(黑边框) public static void setFont(String context, BufferedImage ImageNew, int x, int y, Color c) { Graphics2D g = ImageNew.createGraphics();// 得到图形上下文 g.setColor(c); // 设置画笔颜色 Color.LIGHT_GRAY g.setFont(new Font("宋体", Font.P