개발의 시작과 끝

2020.03.10 / Day - 26 자바 ArrayList 복습 본문

자바 복습

2020.03.10 / Day - 26 자바 ArrayList 복습

개발지혜 2020. 3. 10. 23:55

bbm - 13일차

 

ArrayList 예제 6 - 다양한 데이터 타입 ArrayList

class Main {
	public static void main(String[] args) {
		ArrayList ar = new ArrayList();
		ar.add(100);
		ar.add(200);
		ar.add(300);
		ar.add(400);
		ar.add("abcd");
		ar.add(3.3);
		ar.add(new 사람());


    int a = (int)ar.get(2);
    String b =(String)ar.get(4);

    System.out.println(a);
    System.out.println(b);
		
	}
}

class ArrayList {
	Object[] datas;
	int lastIndex = -1;
	
	ArrayList() {
		datas = new Object[3];
	}
	
	void add(Object data) {
		lastIndex++;
		
		if(lastIndex >= datas.length) {
			Object[] newDatas = new Object[datas.length * 2];
			
			for (int i = 0; i < datas.length; i++) {
				newDatas[i] = datas[i];
			}
			datas = newDatas;
		}
		
		datas[lastIndex] = data;
	}
	
	Object get(int index) {
		return datas[index];
	}
	
	int size() {
		return lastIndex + 1;
	}
	
	void remove(int index) {
		for (int i = index; i < lastIndex; i--) {
			datas[i] = datas[i + 1];
		}
		lastIndex--;
	}
}

class 사람 {
}