在方法中创建数组并在另一个方法中使用它

时间:2014-08-20 02:07:31

标签: java arrays methods

我想在一个方法中使用一个数组,该方法是在同一个类的另一个方法中创建的。

  public class Class1 {
    public static String[] method1() {
      String[] array = new String[5];
      array[0] = "test";
      return array;
    }

    public void method2() {
      System.out.println(array[0]);
    }
   }

3 个答案:

答案 0 :(得分:1)

可以像下面这样做:

public class Class1 {
    public static String[] method1() {
      String[] array = new String[5];
      array[0] = "test";
      return array;
    }

    public void method2(String[] array) {
      System.out.println(array[0]);
    }
public static void main(String[] args){
Class1 obj = new Class1();
obj.method2(method1());
}
       }

或调用method2中的方法

 public class Class1 {
        public static String[] method1() {
          String[] array = new String[5];
          array[0] = "test";
          return array;
        }

        public void method2() {
String[] array = Class1.method1();
          System.out.println(array[0]);
        }
public static void main(String[] args){
    Class1 obj = new Class1();
    obj.method2();
    }
           }

答案 1 :(得分:1)

method1中的数组只是一个局部变量,因此不能直接在class2中使用。如果要使用该“数组”,只需调用method1()即可。它返回数组,然后你可以使用它。 例如

String[] array2 = method1();
System.out.println(array2[0]);

答案 2 :(得分:0)

只需在方法之外声明它,例如:String[] array;

所以,你的代码看起来像这样:

public class Class1 {


public static String[] method1() {
    array = new String[5];
    array[0] = "test";
    return array;
}

public static void main(String[] args) {
    System.out.println(Arrays.toString(method1())); // Converts array to string
}
static String[] array; // Declaring global variable

}

输出应如下所示:[test, null, null, null, null]