搞2个calendar,一个是你输入日期这年的1月1日,一个是你输入的日期
然后1月1日循环加1天,一直到和你输入的日期一致
然后循环里碰到周4就加1
然后1月1日循环加1天,一直到和你输入的日期一致
然后循环里碰到周4就加1
解决方案 »
- 简易QQ程序,怎么加多线程?
- 一起来学习Java吧 欢迎进来
- 第一次碰到这种问题!求围观。
- 泛型的<?>是什么意思
- JAVA中打印昨天的当前时刻
- [求助]关于Applet对象的键盘监听和响应
- 我写了一个网页的采集程序,有些问题,请大家来帮忙解决一下
- 高手们指点一下!关于socket、服务器模拟的问题!
- 求教:为什么ResultSet对象调用getDate方法得到的结果转换为字符窜时,时间数据全是零?
- 请问java程序怎么制作安装程序?installShield好像怎么都下不了呀。
- 下面的代码用eclipse compile为什么不行,我是完全从一个视频里抄过来的,视频里用的是ultra editor写的。是不是我一定要把class分开
- 求java 内存泄漏例子
维基百科里有算法
package org.birdy.httpclient;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;public class DateTest {
public void service(String dateStr){
int i = 1;
Calendar cal = Calendar.getInstance();
cal.set(Calendar.DAY_OF_YEAR, 1);
if(cal.get(Calendar.DAY_OF_WEEK)>5){
/**
* 一年中的第一天如果是星期五或星期六
*/
i = 0;
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date theDay = new Date();
try {
sdf.parse(dateStr);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
cal.setTime(theDay);
int temp = cal.get(Calendar.WEEK_OF_YEAR);
int result = temp + i;
System.out.println("这天是当年的第" + result + "周。");
}
public static void main(String[] args) {
DateTest test = new DateTest();
test.service("2015-01-28");
}
}看在你头像的面子上
*
* java8 计算当前日期是今年的第几周
*
*
* 对周的定义是:从周四到下周五这样算一周.
* @author prd. 2015.1.30
* @param date 格式必须为:yyyy-mm-dd,否则将抛出异常!!!
* @return
*/
private static String calculateDate(String date){
/*
LocalDate.parse(date).getYear()+"的第" -- 前面的parse就是将String转换为日期,之后获取年.
+
LocalDate.parse(date).get(WeekFields.of(DayOfWeek.FRIDAY, 7).weekOfYear())+"周.";
//-------------------看下面的解析,上面这句就是转换String为日期,然后进行获取 //---详细解析. WeekFields.of(DayOfWeek.FRIDAY, 7)
//上面是在设置每周的第一天是周几,这里是设置周五,后面的参数是每周最少几天
.weekOfYear()
//这一句就是获取这一周在当前年是多少周 */
return LocalDate.parse(date).getYear()+"的第"
+LocalDate.parse(date).get(WeekFields.of(DayOfWeek.FRIDAY, 7).weekOfYear())+"周.";
}
public static void main(String[] args) {
System.out.println(calculateDate("2015-01-08")); }
可以使用了,看英文文档,看了半晚上错过了一个重要的地方,还好后来找到了.帮你回答问题也让我成长了.