도드넷
유니티 C# LIST ArgumentOutOfRangeException Argument is out of range 에러! 본문
유니티 C# LIST ArgumentOutOfRangeException Argument is out of range 에러!
도드! 2016. 9. 7. 13:48
Marry Me AJ ♥
유니티 C# LIST ArgumentOutOfRangeException Argument is out of range 에러!
원인 : 불러낸 요소가 비어있습니다.
해결법 : 요소를 추가해 줍니다.
예시
"아이이이이" 라는 인트 리스트를 만들었습니다.
아이이이의 첫번째 요소를 불러내려고 했으나 ArgumentOutOfRangeException Argument is out of range
에러가 발생하며 실패합니다.
List Add 메소드를 추가해서 0을 추가할경우 에러없이 0이 출력됩니다.
(Array를 생각하고 0번 요소에 4를 집어넣는다던가 하는건 안됩니다. list에서 없는건 없는겁니다.)
아규맨트 아웃오브 레인지 익셉션이 발생하는 이유는 비어있는 리스트의 요소에 접근하려 했기 때문입니다.
고로, 반복문을 돌릴때
이런 제한을 걸어주면 애초에 ayyyy의 존재하는 요소만큼만 실행되므로 에러를 방지할 수 있습니다.
그리고 또하나.
List VS Array
ㅋㅋㅋㅋㅋ
그냥 List 씁시다. Array 는 Add 나 Remove 같은 꿀 메소드를 사용할수없고 고정된 크기가 주워지므로
초과시 IndexOutOfRangeException 이라는 에러가 발생할수도 있습니다. ㅠㅠ 이거때문에 시스템 뒤엎어서 다 List로 만드는거 진행중.
C# List 와 Array 차이점?
- Array는 크기가 고정(fixed) 상태고 List는 크기가 고정되있지않고 자유롭다는게 다입니다.
그럼 당연히 Add, Remove, Clear 같은 꿀 메소드 사용가능한 List 써야하는게 아닌가 생각해봅니다. ;ㅅ; 늅늅
'창고 > 나만의 게임 제작' 카테고리의 다른 글
도드의 개발노트#1 - 유니티 스프라이트 테두리 만들기 (0) | 2016.09.20 |
---|---|
유니티 for문과 List remove 버그에 대해서? (0) | 2016.09.07 |
도드의 유니티 API#6 - ONGUI CLICK 만드는 방법 UI 우클릭시 발동 (1) | 2016.09.06 |
도드의 유니티 API#5 - hex 컬러 코드값을 rgb로 반환해서 color 객체만들기!! (0) | 2016.09.04 |
유니티 오류 해결법 - Object Reference not set to an instance of an object (0) | 2016.09.04 |