0

我有一个程序,它接受一个表示数组索引的数字和一个字符串来替换与索引对应的数组元素。

这是我的代码:

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!");    
       }  
   }

我需要做的是将 int 索引变量和 String 值变量作为参数放入方法 replaceArrayElement 中。但我不知道如何调用具有不同数据类型参数的方法。有人可以告诉我怎么做吗?谢谢你。

4

3 回答 3

5

好吧,尚不清楚您从哪里获取要传递的值,但这是您声明该方法的方式:

public static void replaceArrayElement(String[] name, int index, String value)

你可以这样称呼它:

// Get the values from elsewhere, obviously
replaceArrayElement(array, 5, "fred");

请注意,我使用了 - 而String[] name不是String name[]- 虽然后一种语法是允许的,但出于风格问题,强烈建议不要使用它。

于 2012-06-14T06:18:44.140 回答
0

如下声明 replaceArrayElement -

public static void replaceArrayElement(int index, String value, String[] name)

并将其称为 -

replaceArrayElement(2, "Einstein2", names);
于 2012-06-14T06:22:09.410 回答
0
  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(3,"alpesh",names);
}

   public static void replaceArrayElement(int index, String replacename, String names[]){


       if(index<names.length){

           names[index] = replacename;

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

           for(int j=0; j<names.length;j++)
               System.out.println(names[j]);
       } 
       else{     
            System.out.println("Error!");    
       }  
   }
于 2012-06-14T06:26:17.550 回答