Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.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 将字符串的固定长度数组传递给setter?_Java - Fatal编程技术网

Java 将字符串的固定长度数组传递给setter?

Java 将字符串的固定长度数组传递给setter?,java,Java,我有一棵树,树上的节点以坐标命名。我只是把这两个单独的坐标串成一个字符串[]坐标,如下所示 class Node { private String[] coordinates; public Node(){ coordinates = new String[2]; } public setCoordinates(String[] coordinates){ this.coordinates = coordinates;

我有一棵树,树上的节点以坐标命名。我只是把这两个单独的坐标串成一个字符串[]坐标,如下所示

 class Node {
      private String[] coordinates;

      public Node(){
          coordinates = new String[2];
      }

 public setCoordinates(String[] coordinates){
     this.coordinates = coordinates;
 }
我相信解决办法一定很简单。假设我不想要一个特殊的setter,它接受两个字符串并分别设置它们,坐标[0]=X,坐标[1]=Y。这很明显。如何将字符串数组传递给固定长度setter

我试过了

 setCoordinates({"-44.55", "55.22"});

也试过传球 新字符串[2]={}
和[],但这些也不起作用

您必须编写
设置坐标(新字符串[]{“-44.55”,“55.22”})
。(这已经够糟糕的了,你真的应该用两个参数的正常方式来做。)

你必须写
setCoordinates(新字符串[]{“-44.55”,“55.22})
。(这已经够糟糕的了,你真的应该用两个参数的正常方式来做这件事。)

请改为在下面使用

setCoordinates(new String[]{"-44.55", "55.22"});
创建
字符串
数组,并在花括号中传递参数

请改为在下面使用

setCoordinates(new String[]{"-44.55", "55.22"});
创建
字符串
数组,并在花括号中传递参数。

您应该试试

setCoordinates(new String[]{"-44.55", "55.22"});
这就解决了语法问题

原因:

如果我仔细看的话,你的长度和初始化部分都有问题

您创建了一个长度为2的数组。但稍后您将使用set方法覆盖它

除去所有的混乱,您不必担心构造函数部分。如果您没有2个元素的限制,只需删除它并使用setter即可。

您应该试试

setCoordinates(new String[]{"-44.55", "55.22"});
这就解决了语法问题

原因:

如果我仔细看的话,你的长度和初始化部分都有问题

您创建了一个长度为2的数组。但稍后您将使用set方法覆盖它


除去所有的混乱,您不必担心构造函数部分。如果您没有2个元素的限制,只需删除它并使用setter即可。

太快了:)分配字符串[]把我搞砸了。谢谢你们两位。当它允许的时候,我会把它标记为答案。编辑:我正在传递参数。我只是想通过这种方式让事情变得更清楚。这太快了:)分配字符串[]把我搞砸了。谢谢你们两位。当它允许的时候,我会把它标记为答案。编辑:我正在传递参数。我只是想通过这种方式让事情变得更清楚。很抱歉,你的链接没有说明我是怎么搞砸的。将数组初始化为字符串[2]允许位置0和1,不是吗?你是说传递的参数也应该显式为字符串[2]?@mitbanip你标记了一个长度为2的数组,然后用setter对其进行验证。很抱歉,你的链接没有说明我是如何搞砸的。将数组初始化为字符串[2]允许位置0和1,否?您是说传递的参数也应显式为字符串[2]?@mitbanip您标记了一个长度为2的数组,然后使用setter对其进行验证。可能重复的可能重复的