Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:下面的方法做什么?_Java_Arrays - Fatal编程技术网

Java:下面的方法做什么?

Java:下面的方法做什么?,java,arrays,Java,Arrays,为什么参数[0]-1?您传递月号(介于1和12之间的数字)并打印出相应的名称。由于数组索引从零开始,所以减去1,这样运行参数为1的程序将打印“jan”而不是“Feb” 是的,你的大写字母有一个输入错误。是的,我怀疑这需要移动到SO。您需要传递args[0]-1,假设您希望1的结果为“一月”。 尽管逻辑表明一月是数组的第一个元素,但Java中的数组是基于0的,这意味着索引从0到numberOfElements-1,即您正在为月份1-12进行输入。但是由于数组从0开始,所以我们必须从输入中减去1,否

为什么参数[0]-1?

您传递月号(介于1和12之间的数字)并打印出相应的名称。由于数组索引从零开始,所以减去1,这样运行参数为1的程序将打印“jan”而不是“Feb”


是的,你的大写字母有一个输入错误。是的,我怀疑这需要移动到SO。

您需要传递args[0]-1,假设您希望1的结果为“一月”。
尽管逻辑表明一月是数组的第一个元素,但Java中的数组是基于0的,这意味着索引从0到numberOfElements-1,即您正在为月份1-12进行输入。但是由于数组从0开始,所以我们必须从输入中减去1,否则如果我们为Jan输入1,它将显示Feb。因为数组中的Jan为0。因此
args[0]-1

public static void main(String[] args)
{
 String[] months = ("jan","Feb", "March", "April", .... , "Dec");
 System.out.println(months[Integer.parseInt(args[0]-1)]);
}
parseInt(args[0]-1)将输入解析为整数(因为来自java控制台的输入总是字符串格式,所以它将字符串数字转换为int)


这完全是一个离题的话题,完全忽略了程序员是什么。为什么不在堆栈溢出时询问?谢谢你,我做到了。但即使Java标记也不存在。很抱歉给您添麻烦。您运行代码了吗?查看调试器中的
months[]
数组?请移动它。谢谢你@迈克尔,我会试试的!非常感谢你那是什么语言?它看起来与Java相似,但并不完全相同。
String[] months = ("jan","Feb", "March", "April", .... , "Dec"); //Create array of months
System.out.println(months[Integer.parseInt(args[0]-1)]);//prints out the month[] array value according to the index input, to the console.