我有以下代碼將整數和根據位置存儲在布爾數組中。我有一個方法包括,允許用戶輸入更多的數字到數組中,但如果數字大於數組大小,那麼我需要增加大小。我知道,只要修改了每個位置的內容,就不能對數組做很多事情。有沒有一種快速的方法可以讓它更大,或者我可以使用數組列表來保持數組大小的變化?Java增加數組大小
public class ISet {
public int max;
boolean[] numArray;
ISet(int a) {
this.size = a;
this.numArray = new boolean[size];
}
public void include(int n) {
if (n > size) {
this.size = n;
numArray[n]=true;
}
else
numArray[n]=true;
}
數組一次分配的內存不能調整大小。這需要創建一個所需大小的新數組,並將原始數組的內容複製到新創建的數組中,可能使用'java.lang.System.arraycopy(...);' – Tiny
這是什麼目的?請不要在索引「number」處存儲「true」,而應考慮將「number」存儲在list/set/map中,並且如果列表中包含「number」爲「number」爲真,否則爲false。 – Martin
看看這裏; http://docs.oracle.com/javase/tutorial/collections/查看哪個集合最適合您。 – Martin