일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- Java
- BFS
- 파이썬
- DP
- 연관관계
- 백준
- 인프런
- 누적합
- C#강의
- appendleft
- 소수판별
- c#
- popleft
- 완전탐색
- mvc
- 브루투포스
- pypy3
- LCM
- JPA
- Python
- deque
- 1일1솔
- 합 구하기
- python3
- 소수찾기
- spring
- 우선순위큐
- 프로그래머스
- unity
- 그리디 알고리즘
Archives
- Today
- Total
jae_coding
[유니티로 배우는 C#] 컬렉션 본문
반응형
컬렉션
배열의 크기에 대한 단점을 보완해주는 집합체
ArrayList: 연산량이 많아 과부하가 걸릴 수 있다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Unity_lecture : MonoBehaviour
{
//배열의 크기가 5로 고정
int[] exp = new int[5] {1, 2, 3, 4, 5};
//컬렉션: 리스트, 큐, 스택, 해시테이블, 딕셔너리, 어레이리스트
//컬렉션을 사용하기 위해서는 using System.Collections;를 head에 넣어주어야함
ArrayList arrayList = new ArrayList();
void Start(){
// Add: 추가 메소드
arrayList.Add(1);
arrayList.Add(2);
arrayList.Add(3);
arrayList.Add("ABCDE");
arrayList.Add(4.4);
print(arrayList.Count); //arrayList의 길이를 출력 5
for (int i = 0; i <arrayList.Count; i ++){
print(arrayList[i]);
}
// Remove: 삭제 메소드
arrayList.Remove("ABCDE"); // ABCDE 삭제
arrayList.RemoveAt(0); // 1삭제
arrayList.RemoveRange(2, 3); // index 2~3 삭제
// Clear: 초기화
arrayList.Clear();
// CopyTo: 복사
// Contains: 특정 값이 있는지 bool값으로 return해준다.
print(arrayList.Contains("ABCDE")); //False가 반환된다. 위에서 삭제시켜주었기 때문이다.
//Insert: index, value
arrayList.Insert(1, 5); // 2번째에 5를 추가하라.
}
}
List: 특정 자료형만 사용가능하다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Unity_lecture : MonoBehaviour
{
//배열의 크기가 5로 고정
int[] exp = new int[5] {1, 2, 3, 4, 5};
//컬렉션: 리스트, 큐, 스택, 해시테이블, 딕셔너리, 어레이리스트
//컬렉션을 사용하기 위해서는 using System.Collections;를 head에 넣어주어야함
ArrayList arrayList = new ArrayList();
// 특정 자료형만 사용 가능하다.
List<int> list = new List<int>();
void Start(){
list.Add(3);
list.Add(245);
}
}
Hashtable, Dictionary: dictionary가 hashtable보다 연산에서 유리하다
hashtable: 자료형 명시 x
dictionary: 자료형 명시 o
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Unity_lecture : MonoBehaviour
{
//배열의 크기가 5로 고정
int[] exp = new int[5] {1, 2, 3, 4, 5};
//컬렉션: 리스트, 큐, 스택, 해시테이블, 딕셔너리, 어레이리스트
//컬렉션을 사용하기 위해서는 using System.Collections;를 head에 넣어주어야함
ArrayList arrayList = new ArrayList();
// 특정 자료형만 사용 가능하다.
List<int> list = new List<int>();
Hashtable hashtable = new Hashtable();
Dictionary<string, int> dictionary = new Dictionary<string, int>();
void Start(){
// hashtable은 python의 dictionary와 비슷하게 key값과 value가 있다. (자료형 명시 x)
hashtable.Add("만", 10000);
hashtable.Add("백만", 1000000);
hashtable.Add(50, "오십");
print(hashtable["만"]);
print(hashtable["백만"]);
print(hashtable[50]);
// dictionary: 연산에서 hashtable보다 유리하다.
dictionary.Add("가", 100);
}
}
Queue, Stack: FIFO, LIFO
Queue: First Input First Output
Stack: Last Input First Output
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Unity_lecture : MonoBehaviour
{
// Queue: FIFO, 선입선출
Queue<int> queue = new Queue<int>();
// Stack, LIFO, 후입선출
Stack<int> stack = new Stack<int>();
void Start(){
// 추가하기
queue.Enqueue(5);
queue.Enqueue(10);
// 꺼내보기
// queue에 element가 있는지 체크
if(queue.Count != 0){
print(queue.Dequeue()); // 5출력
print(queue.Dequeue()); // 10출력
}
//추가하기
stack.Push(1);
stack.Push(2);
stack.Push(3);
if (stack.Count != 0){
print(stack.Pop()); // 3출력
print(stack.Pop()); // 2출력
print(stack.Pop()); // 1출력
}
}
}
강의자료: 케이디 유튜브
반응형
'C#' 카테고리의 다른 글
[유니티로 배우는 C#] 구조체 (0) | 2022.07.19 |
---|---|
[유니티로 배우는 C#] 네임스페이스 (0) | 2022.07.19 |
[유니티로 배우는 C#] 배열 (0) | 2022.07.19 |
[유니티로 배우는 C#] 접근 지정자 & 범위 지정자 (0) | 2022.07.19 |
[유니티로 배우는 C#] 함수 (0) | 2022.07.19 |
Comments