재밌고 어려운 IT를 이해해보자~!
웹서버 프로그래밍 시험 오답노트 본문
이클립스를 사용하지 않으니 어디서 에러가 나는지 알기거 어려웠다.
정답은 바로 7번라인!
2번라인에서 컬렉션을 사용할때 부여한 제네릭이 없기때문에 Object클래스가 붙는다.
Object타입을 담을 수 있는 배열리스트 datas 객체가 생성된 것 이다. 따라서 2번라인은 문제가 없다.
하지만 항상 제네릭을 사용해 담는 데이터타입을 강제해주자.
여기서 Object란?
java.lang 패키지 중에서도 가장 많이 사용되는 클래스는 바로 Object 클래스이다.
Object 클래스는 모든 자바 클래스의 최고 조상 클래스가 된다.
따라서 자바의 모든 클래스는 Object 클래스의 모든 메소드를 바로 사용할 수 있다.
int 데이터타입 v에 Object데이터타입인 datas값들을 대입할 수 없다!
코드의 에러를 제거하기 위해서는 ArrayList에 Integer 제네릭을 부여해주자.
정답:
public class Main {
public static void main(String[] args) {
ArrayList<Integer> datas = new ArrayList<Integer>();
for (int i = 1; i <= 5; i++) {
datas.add(i); // [1,2,3,4,5]
}
int total = 0;
for (int v : datas) {
total += v;
}
System.out.println("total: " + total); // total: 15
}
}
'코리아IT핀테크과정' 카테고리의 다른 글
WebApp, HTML 1 (0) | 2023.12.27 |
---|---|
Web Crawling (0) | 2023.12.22 |
MVC with Oracle 2 (0) | 2023.12.20 |
MVC with Oracle 1 (0) | 2023.12.19 |
MVC Pattern Practice 4 (0) | 2023.12.18 |
Comments