如果程序依赖命令行参数作为用户输入,例如询问要订购的衬衫数量、衬衫尺寸和颜色选择。我知道这些值将存储在 args[0]
、args[1]
和 args[2]
中。但是,如果我希望按顺序接收这些值,我将如何管理用户未给出一个或多个参数的情况。就像如果没有给出要订购的衬衫数量一样,有没有办法可以将该值初始化为默认值 1?
最佳答案
命令行参数的灵活性非常小:环境将它们作为 String[]
数组传递给您,这意味着各个参数没有名称,只有索引。
您需要决定如何处理缺少一个或多个命令行参数的情况,但请记住,不可能“跳过”中间的参数:每当省略一个参数时,它始终是尾随参数。例如,如果用户使用参数 XXL GREEN
调用您的程序,这些参数将被放置在 args[0]
和 args[1]
中,而args[2]
将会丢失;参数不会放置在 args[1]
和 args[2]
中。
一个简单的选择是将指定少于三个参数的情况视为错误。如果这不够灵活,您可以单独解析参数,并尝试推断它们的“含义”。例如,如果您看到 "S"
、"M"
、"L"
、"XL"
,或 “XXL”
在任何位置,您的程序可能会将其视为大小的指示。
关于java - 使用 String[] args 作为用户输入,如果未给出输入则设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49413970/