[英]Java - How to access an ArrayList of another class?
你好,我是Java的初學者,這是我的問題:我的第一堂課有以下變量:
import java.util.ArrayList;
public class numbers {
private int number1 = 50;
private int number2 = 100;
}
我也有這門課:
import java.util.ArrayList;
public class test {
private numbers number;
}
我的問題是:我想將number1和number2變量存儲到ArrayList中,然后從類test中訪問這個ArrayList。 我怎樣才能做到這一點?
import java.util.ArrayList;
public class numbers {
private int number1 = 50;
private int number2 = 100;
private List<Integer> list;
public numbers() {
list = new ArrayList<Integer>();
list.add(number1);
list.add(number2);
}
public List<Integer> getList() {
return list;
}
}
和測試類:
import java.util.ArrayList;
public class test {
private numbers number;
//example
public test() {
number = new numbers();
List<Integer> list = number.getList();
//hurray !
}
}
您可以通過提供課程numbers
來完成此操作:
順便說一句,有一個強烈的約定,Java類名稱是大寫的。
案例1(簡單的吸氣劑):
public class Numbers {
private List<Integer> list;
public List<Integer> getList() { return list; }
...
}
案例2(不可修改的包裝):
public class Numbers {
private List<Integer> list;
public List<Integer> getList() { return Collections.unmodifiableList( list ); }
...
}
案例3(具體方法):
public class Numbers {
private List<Integer> list;
public void addToList( int i ) { list.add(i); }
public int getValueAtIndex( int index ) { return list.get( index ); }
...
}
您可以執行以下操作:
public class Numbers {
private int number1 = 50;
private int number2 = 100;
private List<Integer> list;
public Numbers() {
list = new ArrayList<Integer>();
list.add(number1);
list.add(number2);
}
int getNumber(int pos)
{
return list.get(pos);
}
}
public class Test {
private Numbers numbers;
public Test(){
numbers = new Numbers();
int number1 = numbers.getNumber(0);
int number2 = numbers.getNumber(1);
}
}
將它們放在第一個類的arrayList中,如:
import java.util.ArrayList;
public class numbers {
private int number1 = 50;
private int number2 = 100;
public ArrayList<int> getNumberList() {
ArrayList<int> numbersList= new ArrayList<int>();
numbersList.add(number1);
numberList.add(number2);
....
return numberList;
}
}
然后,在您的測試類中,您可以調用numbers.getNumberList()來獲取您的arrayList。 此外,您可能希望在數字類中創建addToList / removeFromList等方法,以便您可以按照需要的方式處理它。
您還可以從另一個類中訪問一個類中聲明的變量
numbers.numberList;
如果你把它公之於眾。
但是在我看來這不是一個好習慣,因為您可能需要稍后在代碼中修改此列表。 請注意,您必須將您的類添加到導入列表中。
如果您能告訴我您的應用程序要求是什么,我將能夠更准確地告訴您我認為最好的做法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.