【发布时间】:2016-10-11 16:11:53
【问题描述】:
所以我正在处理一个非常基本的 java 任务,我相信我理解 main 的 (String [] args) 部分是如何工作的。基本上我的理解是命令行参数被放入称为 args 的字符串数组中。但是我的代码不会产生我期望的结果。它似乎可以在没有参数的情况下正常工作,但是当我输入其他任何一个选项时,我总是会遇到我的使用错误。
class TicTacToe
{
public char[][] gameboard = { {' ', ' ', ' '},
{' ', ' ', ' '},
{' ', ' ', ' '} };
public static void main(String [] args) {
char play1, play2;
if(args.length == 0) {
play1 = 'h';
play2 = 'h';
}else if(args.length == 1 && args[0] == "-c") {
play1 = 'c';
play2 = 'c';
}else if(args.length == 2 && args[1] == "1") {
play1 = 'c';
play2 = 'h';
}else if(args.length == 2 && args[1] == "2") {
play1 = 'h';
play2 = 'c';
}else{
System.out.println("Usage: java TicTacToe [-c [1|2]]");
return;
}
}
}
【问题讨论】:
-
当您从程序外部调用 main 方法时,args 可能包含任何变量。您编写的代码正在运行没有任何参数的 main 方法,这就是 args 始终为空的原因。
标签: java command-line arguments