gpt4 book ai didi

java - 在Java中,如果没有传递参数,如何为变量number=Integer.parseInt(args[0])赋值?

转载 作者:太空宇宙 更新时间:2023-11-04 06:39:40 25 4
gpt4 key购买 nike

我编写了这个简单的程序,它接受一个命令行参数,将其转换为 int 类型,并在控制台上打印从该数字开始直到无穷大的整数。

如果我不传递任何参数,则会打印我的异常消息。

public class Infinity
{
public static void main(String args[])
{

try
{
n=Integer.parseInt(args[0]);

while(true)
{
System.out.println(n);
n++;
}
}

catch(Exception ex)
{
System.out.println("A number was not entered.");
}
}
}

如果我不传递任何参数,程序本身会为“n”分配一个值吗?像这样:

            n=Integer.parseInt(args[0]);
if(args[0]==NULL)
{
n=0;
}

最佳答案

您可以默认将 n 的值指定为 0 或任何其他值,并使用 if(args.length > 0) { 检查是否给出了任何参数。以下是带有注释的完整示例:

public class Infinity {
public static void main(String args[]) {

/*
Start by assigning your default value to n, here it is 0
If valid argument is not given, your program runs
starting from this value
*/
int n = 0;

// If any arguments given, we try to parse it
if(args.length > 0) {

try {
n = Integer.parseInt(args[0]);
} catch (NumberFormatException e) {
System.err.println("Argument" + args[0] + " must be an integer.");

// Program ends
System.exit(1);
}

}

// All good, n is either default (0) or user entered value
while(true) {
System.out.println(n);
n++;
}
}
}

注意:对于不太熟悉java的用户,可以通过以下方式运行此程序:

  1. 将其保存到Infinity.java
  2. 通过 cmd 或终端编译:javac Infinity.java
  3. 使用以下命令执行:java Infinityjava Infinity 1000(或任何其他值)

干杯。

关于java - 在Java中,如果没有传递参数,如何为变量number=Integer.parseInt(args[0])赋值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24842666/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com