0则有输入
// 数组长度由数组对象的固有属性length获得
if (args.length == 0) {
// 若用户没有在命令行输入,则要求用户从从控制台键盘输入年份
System.out.println("您没有在启动程序时加上年份参数!");
}
// 从命令行参数输入年份
else {
input = args[0];
// 反馈用户输入的内容
System.out.println("您在启动程序时命令行输入的数据是 :" + input);
// 用try语句来捕捉用户输入错误
try {
year = Integer.parseInt(input);
if ((year % 4 == 0 &;&; year % 100 != 0) || year % 400 == 0)
System.out.println(year + "是闰年");
else
System.out.println(year + "是平年");
} catch (NumberFormatException e) {
System.out.println(input + "是无效输入!,请重新输入...");
}
}
do {
System.out.println("请输入年份(输入0退出程序):");
// 获得用户输入
input = stdIn.readLine();
// 反馈用户输入的内容
System.out.println("您刚才从控制台键盘输入的数据是 :" + input);
try {
year = Integer.parseInt(input);
if (year == 0) {
System.out.println("程序退出......");
break;
}
if ((year % 4 == 0 &;&; year % 100 != 0) || year % 400 == 0)
System.out.println(year + "是闰年");
else
System.out.println(year + "是平年");
} catch (NumberFormatException e) {
System.out.println(input + "是无效输入! 请重新输入...");
}
} while (true); // 注意这里使用的是无限循环!!!,那程序怎么结束呢
}
static void process(int year){
if ((year % 4 == 0 &;&; year % 100 != 0) || year % 400 == 0)
System.out.println(year + "是闰年");
else
System.out.println(year + "是平年");
}
}
1.Year.java
//从IO包引入必要的工具类
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
//闰年
public class Year {
public static void main(String[] args) throws IOException {
// 做好从控制台键盘输入的准备
工作 BufferedReader stdIn = new BufferedReader(new InputStreamReader(
System.in));
int year;
if (args.len
gth == 0) {
// 从控制台键盘输入年份
System.out.println("您没有在启动
程序时加上年份参数!");
System.out.println("请输入年份(输入0退出程序):");
year = Integer.parseInt(stdIn.readLine());
}
// 从命令行参数输入年份
else
year = Integer.parseInt(args[0]);
while (year != 0) {
if ((year % 4 == 0 &;&; year % 100 != 0) || year % 400 == 0)
System.out.println(year + "是闰年");
else
System.out.println(year + "是平年");
System.out.println("请输入年份(输入0退出程序):");
try {
year = Integer.parseInt(stdIn.readLine());
} catch (Exception e) {
year = 0;
System.out.println("无效输入,程序退出......");
}
}
System.out.println("程序退出......");
}
}
0.AnalyzeCommandLineArgument.java
public class AnalyzeCommandLineArgument {
/*
* arguments是字符串数组类型的参数, 它用来存储用户在启动本程序时放在程序名后的参数
*/
public static void main(String[] arguments) {
// .length 是这个数组的长度,是数组的属性,直接使用
if (arguments.length != 0)
for (int i = 0; i < arguments.length; i++) {
// 按行输出每个参数的值
System.out.println("用户添加的第" + (i + 1) + "个参数是 " + arguments[i]);
}
else
System.out.println("用户在启动程序时没有加参数!");
}
}