将数组传递给方法(Java)

jhe*_*edm 0 java

我有一个程序接受一个表示数组索引的数字和一个String来替换对应于索引的数组元素.

这是我的代码:

public static void main(String args[]){

    String names[]={"Alvin", "Einstein", "Ace", "Vino", "Vince"};

          for(int i=0; i<names.length;i++)
                 System.out.println(i + " - " + names[i]);

    replaceArrayElement(names);
}

   public static void replaceArrayElement(String name[]){

       int index = 0;
       String value = "";

       Scanner scan = new Scanner(System.in);

       System.out.print("\nEnter the index to be replaced:");
       index = scan.nextInt();

       if(index<name.length){

           System.out.print("Enter the new value:");
           value = scan.nextLine();

           name[index] = scan.nextLine(); 

           System.out.println("\nThe new elements of the array are");

           for(int j=0; j<name.length;j++)
               System.out.println(name[j]);
       } 
       else{     
            System.out.println("Error!");    
       }  
   }
Run Code Online (Sandbox Code Playgroud)

我需要做的是将int index变量和String值变量放在方法replaceArrayElement中作为参数.但我不知道如何使用不同的数据类型参数调用方法.有人可以告诉我怎么样?谢谢.

Jon*_*eet 5

嗯,目前还不清楚你从哪里获取值,但是这里是你如何声明方法:

public static void replaceArrayElement(String[] name, int index, String value)
Run Code Online (Sandbox Code Playgroud)

你打电话给:

// Get the values from elsewhere, obviously
replaceArrayElement(array, 5, "fred");
Run Code Online (Sandbox Code Playgroud)

请注意,我使用的String[] nameString name[]- 而后者的语法是允许的,因此强烈建议不要使用样式.