나는 정수를 취하여 위치에 따라 부울 배열에 저장하는 다음 코드를 가지고 있습니다. 나는 사용자가 배열에 더 많은 숫자를 입력 할 수 있도록하는 방법을 포함하고 있습니다. 그러나 그 수가 배열 크기보다 크면 크기를 늘려야합니다. 배열을 만들면 각 위치에있는 것을 바꿀 수 없다는 것을 알고 있습니다. 배열을 더 크게 만들 수있는 방법이 있습니까? 아니면 arraylists를 사용하여 배열 크기를 변경할 수 있습니까?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
어떤 목적으로? 인덱스 "숫자"에 "참"을 저장하는 대신 목록/세트/맵에 "숫자"를 저장하고 "숫자"가 참인 숫자가 목록에 포함되어 있으면 그렇지 않으면 거짓입니다. – Martin
여기를보세요. http://docs.oracle.com/javase/tutorial/collections/ 어떤 컬렉션이 가장 적합한 지 확인하십시오. – Martin