【问题标题】:Passing arrays into a method (java)将数组传递给方法(java)
【发布时间】:2012-11-13 16:03:41
【问题描述】:

我目前正在编写代码来进行骑士之旅。我试图将一个双数组(板)传递给一个方法,但我得到一个预期的错误。我不知道我应该如何声明它(数组不起作用),或者这是否完全错误。 这是我目前坚持的代码。

 public void makeBoard(Board,int column, int row){
     for (i=1;i<=column;i++)
     {
         for  (j=1;j<=row;j++)
         {
              Board[i][j] = "x";
         }
     }
     Board[1][1] = "1";
     xpos = 1;
     ypos = 1;
 }

主要是声明。 Board 是一个双数组。

【问题讨论】:

  • 你没有说第一个参数的类型是什么..
  • Board is a double array. -> 你的意思是一个数组数组?
  • 不叫双数组,是二维数组。
  • 否则关于此代码:您知道 Java 中的数组是零索引的,对吧?我相信你想要的是 Board[0][0]for(int i=0;..., for(int j=0;...

标签: java arrays methods declaration


【解决方案1】:

您需要指定参数的类型。

public void makeBoard(String[][] Board, int column, int row){

注意事项:

  1. 类型的名称​​不是双精度数组。单词double 是Java 中不同类型的名称。这意味着double precision floating point number。您的代码中没有任何双精度数。

  2. 标准命名约定是对参数名称使用驼峰式大小写。你应该写board 而不是Board

  3. 数组在 Java 中是 0-indexed。您的循环应该从 0 开始,而不是 1。

【讨论】:

  • 非常感谢!!!可悲的是,我遇到了更多错误,但我知道如何传入数组,谢谢!!
【解决方案2】:

在java方法中,参数由参数类型和名称组成。对于int 列,int 是类型,列是名称。因此,board 实际上是你的参数名称,类型应该是String[][]

public void makeBoard(String[][] Board,int column, int row){...}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-18
    • 1970-01-01
    • 2021-06-04
    • 2013-10-04
    • 2015-02-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多