수업시간 JAVA/문제
무한배열 응용해서 ArrayList클래스를 만들어보기
by SEOKIHOUSE
2023. 5. 18.
package practice0517무한배열연습ok;
class Factory1 {
int[] a = new int[1];
static int index;
public void increase() {
int[] b = new int[a.length+1];
for (int i = 0; i < a.length; i++) {
b[i] = a[i];
}
a = b;
}
public void add(int num) {
if (index == a.length) {
increase();
}
a[index] = num;
index++;
}
public void remove(int indexNum) {
if (indexNum >= a.length) {
System.out.println("배열범위를 벗어남");
} else {
for (int i = indexNum; i < a.length - 1; i++) { // 1 2 3 4 5 일떄 2삭제 //1이 들어옴
a[i] = a[i + 1];
}
index--;
int[] b = new int[a.length-1];
for (int i = 0; i < b.length; i++) {
b[i] = a[i];
}
a = b;
}
}
public int get(int indexNum) {
return a[indexNum];
}
}
public class makeArrayList2 {
public static void main(String[] args) {
Factory1 f = new Factory1();
f.add(1);
f.add(2);
f.add(3);
f.add(4);
f.add(5);
for (int i = 0; i < f.a.length; i++) {
System.out.print(f.get(i) + " ");
}
System.out.println();
f.remove(0);
f.remove(3);
f.remove(4);
for (int i = 0; i < f.a.length; i++) {
System.out.print(f.get(i) + " ");
}
}
}