티스토리 뷰
https://docs.microsoft.com/ko-kr/dotnet/api/system.collections.generic.list-1?view=netcore-3.1
1. 간혹 크기를 설정하지 않은 리스트에 Clear() 같은 코드를 사용해서 오류가 뜨는데, 애초에 선언할 때 크기를 정해주자.
public List<int> i = new List<int>();
2. Capacity != Lenght
Lenght는 배열의 Size를 의미하지만 Capacity는 Size가 아닌 "내부 데이터 구조가 보유할 수 있는 전체 요소 수"라고" 라고 한다.
3. List의 Count를 배열의 Lenght처럼 쓰는 실수를 간혹 해버린다...
public List<int> list = new List<int>();
for(int i = 0; i < list.Count; i++)
{
list.Remove(i);
print("Count : " + list.Count.ToString() + "\n Capacity : " + list.Capacity.ToString());
}
만약 상기한 코드에서 list가 10이라면 for문을 10번 반복하는 것이 아니라
for문 1회 차마다 요소가 하나씩 Remove 되어 for문 5회 차에서 i > list.Count 되어 for문이 끝난다.
원했던 for문 10회 반복은 실패하기 때문에 굳이 사용하고 싶다면
public List<int> list = new List<int>();
int listSize = list.Count;
for(int i = 0; i < listSize; i++)
{
print(list[i]);
}
list.Count를 잠시 받아둘 임시 변수를 생성하여 사용한다.
일단 여기까지(20.07.09)
'유니티 > C# Code' 카테고리의 다른 글
GPT >> Application의 path 종류에 대해 설명해줘 (0) | 2024.06.19 |
---|---|
(학원과제) Array vs List vs ArrayList (0) | 2024.05.20 |
포켓몬 상성 계산 구현 x 이차원 배열 (20240519 c#으로 업데이트) (0) | 2024.05.14 |
가위 바위 보! 그런데 Switch 문을 곁들인... (0) | 2024.05.09 |
특정애니메이션이끝날때까지기다리는코루틴 (수정) (0) | 2020.07.09 |