2016-10-18 17 views
0

これは正しく行っていますか?別のクラスに文字列のArrayListを呼び出す?

test.java(MAIN):

public class test { 
    public static ArrayList<String> testArray = new ArrayList<String>(); 

    public static void main (String[] args) { 
     ArrayList<String> test = new ArrayList<String>(); 
     test.add("blah1"); 
     test.add("blah2"); 
    } 

    public static ArrayList<String> passTestArray() { 
     return testArray; 
    } 

} 

secondClass.java

public class secondClass { 
    ArrayList<String> test = test.passTestArray(); 
    for (int i = 0; i < test.size(); i++) { 
     System.out.println(authors.get(i)); 
    } 
} 

secondClassクラスからの出力としては何も取得しません。私がこれを正しく行っているかどうかわからない。 :/

+2

あなたが投稿した内容は、正当なJavaコードではありません。メソッドの外側にforループを持つことはできません。どのようにしてこのコードをコンパイルするのかもわかりません。 –

+0

おっと!知らせてくれてありがとうございます! –

+0

@EugenHotaj、これを正しく行っているかどうか知っていますか? 'test.java'のメソッドを' secondClass.java'に渡して配列を渡すことはできますか? –

答えて

0

secondClass.java、あなたは新しいArrayListを作成し、存在しないメソッドを呼び出しようとしています。 テストクラスを初期化し、そのメソッドを呼び出すには、以下のような何かを行う必要があります。上記で

public class SecondClass { 
    private Test firstClass; 
    private ArrayList<String> test = new ArrayList<String>(); 

    SecondClass() { 
     firstClass = new Test(); 
     test = firstClass.passTestArray(); 
    } 

} 

、あなたはあなたの最初のクラス(test.java)を初期化し、その後、そのメソッドを呼び出して、secondClass.javaを作成することがあります。

関連する問題