如何将字符串数组传递给另一个方法?

时间:2013-05-17 05:27:34

标签: java arrays variables methods

我的代码是这样的:

    public class Test() {

    String [] ArrayA = new String [5] 

    ArrayA[0] = "Testing";

      public void Method1 () {

            System.out.println(Here's where I need ArrayA[0])

         }

     }

我尝试了各种方法(没有双关语意)但没有效果。感谢您提供的任何帮助!

5 个答案:

答案 0 :(得分:1)

public class Test {

    String [] arrayA = new String [5]; // Your Array

    arrayA[0] = "Testing";

    public Test(){ // Your Constructor

        method1(arrayA[0]); // Calling the Method

    }

      public void method1 (String yourString) { // Your Method

            System.out.println(yourString);

         }

     }

在您的主要课程中,您只需致电new Test();
或者,如果您希望通过创建Test实例从主类调用该方法,您可以写:

public class Test {

    public Test(){ // Your Constructor

        // method1(arrayA[0]); // Calling the Method // Commenting the method

    }

      public void method1 (String yourString) { // Your Method

            System.out.println(yourString);

         }

     }

在您的主课程中,在main班级中创建一个测试实例。

Test test = new Test();

String [] arrayA = new String [5]; // Your Array

arrayA[0] = "Testing";

test.method1(arrayA[0]); // Calling the method

并打电话给你的方法。

编辑:

提示:有一个编码标准,表示永远不要以大写字母开始methodvariable
另外,声明类不需要()

答案 1 :(得分:0)

试试这个

private void Test(){
    String[] arrayTest = new String[4];
    ArrayA(arrayTest[0]);
}

private void ArrayA(String a){
    //do whatever with array here
}

答案 2 :(得分:0)

如果我们正在谈论传递数组,为什么不对它进行整洁并使用varargs :)你可以传入一个字符串,多个字符串,或一个字符串[]。

// All 3 of the following work!
method1("myText");
method1("myText","more of my text?", "keep going!");
method1(ArrayA);

public void method1(String... myArray){
    System.out.println("The first element is " + myArray[0]);
    System.out.printl("The entire list of arguments is");
    for (String s: myArray){
        System.out.println(s);
    }
}

答案 3 :(得分:0)

试试这个代码段: -

public class Test {

        void somemethod()
        {
            String [] ArrayA = new String [5] ;

                ArrayA[0] = "Testing";

                Method1(ArrayA);
        }
      public void Method1 (String[] A) {

            System.out.println("Here's where I need ArrayA[0]"+A[0]);

         }
      public static void main(String[] args) {
        new Test().somemethod();
    }

}

班级名称永远不应该有Test()

答案 4 :(得分:0)

我不确定你要做什么。如果它是java代码(它看起来像),那么如果你不使用匿名类,那么它在语法上是错误的。

如果这是构造函数调用,则代码如下:

  public class Test1() {
    String [] ArrayA = new String [5]; 
    ArrayA[0] = "Testing";
      public void Method1 () {
            System.out.println(Here's where I need ArrayA[0]);
         }
     }

应写成:

public class Test{
    public Test() {
    String [] ArrayA = new String [5]; 
    ArrayA[0] = "Testing";
        Method1(ArrayA);          
    }
    public void Method1(String[] ArrayA){
        System.out.println("Here's where I need " + ArrayA[0]);
    }
}