在 Java 中返回一個 ArrayList
Mohd Ebad Naqvi
2023年10月12日
ArrayList 是 java.util
包的可調整大小的類。它是一個可擴充套件的陣列,這意味著可以隨時修改陣列的大小。但是,有時使用起來可能會有點慢。
在本教程中,我們將從 Java 類中的函式返回一個 ArrayList。
從 Java 中的非靜態函式返回一個 ArrayList
我們將使用一個建立並返回某個大小的 ArrayList 的函式。我們將嘗試在另一個類中呼叫這個函式。這個函式是非靜態的,所以需要類的一個物件來呼叫它。
在下面的程式碼中,我們建立了這樣一個函式。
import java.util.ArrayList;
public class ClassA {
public static void main(String args[]) {
ClassB m1 = new ClassB();
List listInClassA = m1.myNumbers();
System.out.println("The List is " + listInClassA);
}
}
public class ClassB {
public ArrayList<Integer> myNumbers() {
ArrayList<Integer> numbers = new ArrayList<Integer>();
numbers.add(10);
numbers.add(15);
numbers.add(30);
return (numbers);
}
}
輸出:
The List is [10, 15, 30]
函式 myNumbers()
不是靜態的。因此,我們需要在 ClassA
中建立一個 ClassB
的例項。現在我們將可以訪問 ClassB
的 ArrayList 方法 myNumbers()
。
從 Java 中的靜態函式返回一個 ArrayList
可以訪問或呼叫靜態函式,而無需建立它所屬類的物件。
如果要從其父類外部呼叫靜態方法,我們必須指定定義該靜態函式的類。
我們可以在使用靜態函式時稍微修改我們的程式碼。
import java.util.ArrayList;
public class ClassA {
public static void main(String args[]) {
List listInClassA = classB.myNumbers();
System.out.println("The List is " + listInClassA);
}
}
public class ClassB {
public static ArrayList<Integer> myNumbers() {
ArrayList<Integer> numbers = new ArrayList<Integer>();
numbers.add(10);
numbers.add(15);
numbers.add(30);
return (numbers);
}
}
輸出:
The List is [10, 15, 30]
在上面的例子中,我們從 classA
中的 classB
引用了函式,而沒有建立 classB
的物件。