JAVA arrayList에서요~
글쓴이: hwoney / 작성시간: 토, 2003/11/08 - 2:09오후
arraylist에 넣었다가
다시 get 하면 모두 object 타입이 되자나요...
그런데 그 전에,서로 타입이 다른
a 클래스타입과 b클래스 타입과 , c클래스 타입을
한 arraylist에 넣어줬는데요.......
나중에 get 해서, 그것이 전에 어떤 오브젝타입이었나
알아내서 if문을 돌릴라 했는데....
잘 안되네요.....;;;
Class cl = array_l.get(i).getClass(); if( cl == a.class){ }else if(cl == b.class){ }else if(cl == c.class){ }
이런식으로 하면 안되는 건지요;;
Forums:
if (a instanceof A) {...}를 쓰세요 :
if (a instanceof A) {
...
}
를 쓰세요 :)
----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...
instanceof 를 쓰셈
Object type은 항상 클래스 casting을 해줘야 합니다.
Class a = b.getClass();
했을 때 a 는 그야 말로 클래스 타입에 클래스입니다.
따라서 a.getName()하면 클래스 이름이 리턴 됩니다.
상세한건 중략 하고 클래스 개념을 올바로 잡으시고요...
제가 코드를 드리면
이 코드가 에러 없이 돌아 갈거라고 믿지 마세요... 에디터로 써본 거 뿐이니까..
암튼 instanceof 를 사용 해서 각 Object로 분리 하고 실제 그 Object
타입으로 쓰려고 할땐 casing해서 사용 하시라는 말씀 입니다.
안녕하십니까....카르페디엠 Carpe Diam
댓글 달기