求解一段代码

sheeprz 2009-09-18 10:14:55
在看一个21java代码包 里面有一段 输入年 月后判断该月有几天的代码
class DayCounter {
public static void main(String[] arguments) {
int yearIn = 2001;
int monthIn = 2;
if (arguments.length > 0)
monthIn = Integer.parseInt(arguments[0]);
if (arguments.length > 1)
yearIn = Integer.parseInt(arguments[1]);
System.out.println(monthIn + "/" + yearIn + " has "
+ countDays(monthIn, yearIn) + " days.");

}

static int countDays(int month, int year) {
int count = -1;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
count = 31;
break;
case 4:
case 6:
case 9:
case 11:
count = 30;
break;
case 2:
if (year % 4 == 0)
count = 29;
else
count = 28;
if ((year % 100 == 0) & (year % 400 != 0))
count = 28;
}
return count;
}
}

那两行if语句是做什么用的?
...全文
133 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuhonggood 2009-09-18
  • 打赏
  • 举报
回复
System.err.println();方法可以将输出的字体用红色显示
if (arguments.length > 0)
monthIn = Integer.parseInt(arguments[0]);
if (arguments.length > 1)
yearIn = Integer.parseInt(arguments[1]);
这2行的含义是这样子的 再我们开始学java的时候是使用Windows的命令行在里面输入命令进行编译 运行java代码 java中 main方法是程序的执行入口,public static void main(String[] arguments)中 字符串数组 arguments用于接收我们输入的控制台参数 具体如何使用你可以上GOOGLE 搜索一下相关资料
gesanri 2009-09-18
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 justinavril 的回复:]
引用 7 楼 gesanri 的回复:
... 果然是bug啊

不是bug 本来框框对代码就有着色了 你要是在自己添加颜色会乱的

要是有说明 可以加注释嘛
[/Quote]
那还是bug啊,可以这么处理,一行一行的描上去,发现那行有color标签,就赋色color,否则把关键字赋蓝色,或者一次性全部描上去,再依次扫描每行,发现有color标签,将整行的颜色置换为指定的颜色(包括关键字)
liuzhongchao 2009-09-18
  • 打赏
  • 举报
回复
判断该月是不是闰月
justinavril 2009-09-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 gesanri 的回复:]
... 果然是bug啊
[/Quote]
不是bug 本来框框对代码就有着色了 你要是在自己添加颜色会乱的

要是有说明 可以加注释嘛
gesanri 2009-09-18
  • 打赏
  • 举报
回复
... 果然是bug啊
gesanri 2009-09-18
  • 打赏
  • 举报
回复
我试试

hello
gesanri 2009-09-18
  • 打赏
  • 举报
回复
转化为整型,因为你main方法的参数是String[]类型,所以输入的年和月都是字符串,要转为整型再处理
justinavril 2009-09-18
  • 打赏
  • 举报
回复
代码框里是无法加色的 好像
[Quote=引用 3 楼 sheeprz 的回复:]
是开始那两行
if (arguments.length > 0)
            monthIn = Integer.parseInt(arguments[0]);
        if (arguments.length > 1)
            yearIn = Integer.parseInt(arguments[1]);
        System.out.println(monthIn + "/" + yearIn + " has "
            + countDays(monthIn, yearIn) + " days.");
btw 怎么在代码框里加色?
[/Quote]
sheeprz 2009-09-18
  • 打赏
  • 举报
回复
是开始那两行
if (arguments.length > 0)
monthIn = Integer.parseInt(arguments[0]);
if (arguments.length > 1)
yearIn = Integer.parseInt(arguments[1]);
System.out.println(monthIn + "/" + yearIn + " has "
+ countDays(monthIn, yearIn) + " days.");
btw 怎么在代码框里加色?
gesanri 2009-09-18
  • 打赏
  • 举报
回复
判断是否闰年,闰年2月28天,其余29天
闰年的计算方法:公元纪年的年数可以被四整除,即为闰年;被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。
justinavril 2009-09-18
  • 打赏
  • 举报
回复
闰年

62,621

社区成员

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

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