写了个日历小程序,但是输出控制有点问题,无法对齐,不知该怎么调整?比如1月1号星期二,那么星期一的位置为空,从星期二开始显示怎么做?

baidu_23277177 2015-10-13 10:48:05
//日期星期小程序
public class J_Date
{
public static void main(String args[])
{
int year=2008;
int length,i,j;
i=j=length=0;
int sum,wsum,weekday;
sum=wsum=weekday=0;
String[] week={"星期一","星期二","星期三","星期四","星期五","星期六","星期七"};
for(i=1;i<13;i++)
{
if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
length=31;//每月的天数
else if(i==2)
length=29;
else
length=30;
for(j=1;j<=length;j++)
{
++sum;//一年中的天数
weekday=sum%7;
System.out.print(" "+year+"/"+i+"/"+j);
System.out.print(week[weekday]+" ");
if(weekday==6)
System.out.println();

if(j==weekday+1)//
{
wsum++;//日期与星期相同天数
}
}


}
System.out.println();
System.out.println("2008年共有"+sum+"天");
System.out.println("2008年日期与星期相同的天数共有"+wsum+"天");
}




}

输出结果如下:
2008/1/1星期二 2008/1/2星期三 2008/1/3星期四 2008/1/4星期五 2008/1/5星期六 2008/1/6星期七
2008/1/7星期一 2008/1/8星期二 2008/1/9星期三 2008/1/10星期四 2008/1/11星期五 2008/1/12星期六 2008/1/13星期七
2008/1/14星期一 2008/1/15星期二 2008/1/16星期三 2008/1/17星期四 2008/1/18星期五 2008/1/19星期六 2008/1/20星期七
2008/1/21星期一 2008/1/22星期二 2008/1/23星期三 2008/1/24星期四 2008/1/25星期五 2008/1/26星期六 2008/1/27星期七 ......

我想通过程序判断把第一行的日期素后移,和下面的对齐,从周一开始显示,请问该怎么做?
...全文
162 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjy6829787 2015-10-13
  • 打赏
  • 举报
回复
判断一下输出的第一个日期的weekday,是几就输出几个空字符串,空字符串长度就是你输出的一个日期的长度
baidu_23277177 2015-10-13
  • 打赏
  • 举报
回复
晓得了,开始没想到,多谢啦!

23,407

社区成员

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

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