본문 바로가기

list

유니티와 C# 개념 정리_013_컬렉션즈_Collections collection(컬렉션)의 뜻은 '물건의 더미 또는 사람의 무리'이다. 그러므로 C#에서 Collection(컬렉션)은 데이터를 그룹으로 관리하는 것을 나타낸다. 코드를 작성할 때 데이터 또는 개체를 하나로 묶어서 그룹으로 관리해야 하는 경우가 있다. 예를 들어 서로 관련있는 숫자(점수, 등수 등)나 문자열(과목, 플레이어 등)이 여러 개일 경우에는 하나의 변수에 함께 저장해서 관리하면 편리할 것이다. 이렇게 묶어서 관리할 수 있는 방법에는 2가지가 있다. 1. Array (어뢰이; 배열) 2. Collections (컬렉션즈) Arrays는 가장 기본적인 컬렉션 구조이다. Collections는 배열(Array)의 단점을 보완하고 기능을 추가해서 만들어진 구조이다. Collections에는 Arra.. 더보기
유니티47_게임 제작 과정 16_Generic Collections 이번에는 적을 생성하는 방법을 업그레이드 해보자. 현재 적을 생성하는 좌표(Coordinate)는 배열(Array)로 만들어져서 좌표를 추가하지 못하고 정해져 있다. 이것을 좌표를 랜덤으로 추가하기 위해서는 제네릭컬렉션인 List로 바꾸면 된다. 2번 줄에서 제네릭컬렉션을 사용하기 위해 네임스페이스 System.Collection.Generic을 사용한다. 12번 줄에서 List로 수정한다. EnemyRandom메서드를 위와 같이 수정한다. 52번 줄에서 SpawnEnemy 매개변수를 전달한다. GameObject타입은 범위를 (0,2)로 지정해서 0~1개의 적을 전달한다. 좌표 위치는 Coordinates 리스트의 개수(Count)까지 중에서 랜덤으로 선택해서 그 위치를 받아 전달한다. 54번 줄에서 .. 더보기
유니티37_C#_22_Generic 제네릭 Generic(제네릭) 앞 글 마지막 부분에 컬렉션의 단점(boxing, unboxing)에 대해 설명하고 그것을 극복하기 위해 Generic을 만들었다고 했다. *generic : 포괄적인, 총칭의 Generic은 '타입(Type)을 미리 정하지 않고(포괄적인 상태로 해두고), 그것을 사용할 시점에 타입을 정의'하는 것을 말한다. 12번줄에 클래스를 만들고 int타입의 필드를 만들었다. 7,8번줄에 이 클래스로 객체를 만들고 data필드에 int값을 저장했다. 그런데 data에 다시 float타입의 값을 넣어야 한다면 다음과 같이 필드를 추가하거나, 새 클래스를 만들어야 한다. 위와 같은 상황을 해결할 수 있는 것이 Generic(제네릭)이다. 제네릭은 타입을 미리 정하지 않은 상태에서 나중에 타입을 .. 더보기
Kotlin더파기_10_Collection_List collect는 '모으다, 수집하다' collection은 '수집품, 더미'의 뜻이다. 코딩에서 collection(컬렉션)은 '모여있는 값(value)'을 나타낸다. 컬렉션에 모여있는 각각의 값을 element(요소)라고 한다. 컬렉션은 3가지 종류가 있다. List (리스트) : 각 요소가 순서대로 중복도 가능하게 저장되어 있다. Set (세트) : 요소들이 중복되지 않게 저장되어 있다. Map (맵) : key(키)와 value(값)이 한 쌍을 이루어 저장되어 있다. 코틀린의 컬렉션은 2가지 Type(타입)이 있다. mutable : 변경 가능 타입 read-only : 읽기 전용 타입 List (리스트) 리스트를 저장할 변수를 만든다. 변수 선언은 변하지 않는 val로 선언한다. listOf 함수.. 더보기