想问一下一个程序

wyx664050598 2007-11-16 09:26:05
一个程序是:计算某年某月份的最后一天日期,
用JAVA怎么写呢?
先谢谢了
...全文
106 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fbeacon 2007-11-17
  • 打赏
  • 举报
回复
[code=Java]

import java.util.Calendar;

public class TestC {

public void test() {
Calendar cd = Calendar.getInstance();
cd.setLenient(!cd.isLenient());
int year = cd.get(Calendar.YEAR);//使用当前日期或随意设置年份.
for (int i = 1; i < 12; i++) {
cd.set(year, i, 1);
cd.add(Calendar.DATE, -1);
System.out.println(year+"第" + (i) + "个月最后一天为: "
+ cd.get(Calendar.DATE) + "号");
}
System.out.println(year+"第12个月的最后一天为31号");//12月份单独处理.
}

public static void main(String[] args) {
TestC tc = new TestC();
tc.test();
}
[/code]
laitaogood 2007-11-17
  • 打赏
  • 举报
回复
同意2楼的,其实,好多代码可以不用写,软件工程有句话叫做不要发明相同的轮子。
CaiKanXP 2007-11-16
  • 打赏
  • 举报
回复
楼上辛苦了,Date的多数方法好像已过时,推荐使用Calendar类,楼主请参考Java API Doc
cursor_wang 2007-11-16
  • 打赏
  • 举报
回复
草草的写了个,你看下.

import java.util.Date;
class Test{
public static void main(String[] args){
String day=new Integer(Test.getLastDay(2007,4)).toString();
System.out.println(day);
}
public static int getLastDay(int year,int month){
int new_year=year;
int new_month=month++;
if(month>12){
new_month-=12;
new_year++;
}
Date new_date=new Date(new_year,new_month,1);
return (new Date(new_date.getTime()-1000*60*60*24)).getDate();
}
}

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧