0316 ArrayList/제너릭 클래스
2021. 3. 16. 13:19ㆍC#/수업내용
필요에 따라서 크기가 동적으로 증가하는 배열을 사용
상속: Object > Arraylist
List<데이터 타입> = Generic List 일반화
컬랙선: 경우 관련 개체의 그룹을 만들고 관리할 때 배열/컬랙션을 만든다
배열은 고정된 개수의 강력한 형식 개체
컬렉션은 개체 그룹에 대해 작업하는 보다 유연한 방법/개체 그룹이 동적으로 확장되거나 축소될 수 있다.
컬렉션은 클래스이므로 해당 컬렉션에 요소를 추가하려면 먼저 클래스 인스턴스를 선언해야 합니다.
public App()
{
//List 변수 선언
List<string> names; //형식 매개명
//List 인스턴스화+변수에 할당
names=new List<string>();
//요소 추가
names.Add("홍길동");
names.Add("임꺽정");
names.Add("장길산");
//리스트의 길이 출력
Console.WriteLine("count: {0}", names.Count);
//요소 출력
foreach (string name in names)
{
Console.WriteLine(name);
}
}
//List 변수 선언
//List 인스턴스화+변수에 할당
//요소 추가
//리스트의 길이 출력
//요소 출력
//List 사용해서 인벤토리 제작
//아이템 넣고 빼기
//아이템 검색
//아이템 삭제
//아이템 수정
public class App
{
public App()
{
//List 변수 선언
List<string> item; //형식 매개명
//List 인스턴스화+변수에 할당
item = new List<string>();
//요소 추가
item.Add("이루실의 직검");
item.Add("벌어진 검");
item.Add("브로드 소드");
//리스트의 길이 출력
Console.WriteLine("Count: {0}", item.Count);
//요소 출력
foreach (string items in item)
{
Console.WriteLine(items);
}
Console.WriteLine("-------------------------");
//List 사용해서 인벤토리 제작
//아이템 넣고 빼기
item.Add("가시갑옷");
item.Remove("이루실의 직검");
foreach (string items in item)
{
Console.WriteLine(items);
}
Console.WriteLine("-------------------------");
//아이템 검색
string searchName = "벌어진 검";
foreach (string names in item)
{
if (item.Contains(searchName))
{
Console.WriteLine("{0}을 찾았습니다.", searchName);
break;
}
else
{
Console.WriteLine("{0}을 찾지 못했습니다.", searchName);
}
}
Console.WriteLine("-------------------------");
//아이템 삭제
string foundName="벌어진 검";
for (int i = 0; i < item.Count; i++)
{
if (item.Contains(foundName))
{
Console.WriteLine("{0}을 찾았습니다.", searchName);
item[i] = null;
break;
}
}
foreach (string names in item)
{
Console.WriteLine(names);
}
Console.WriteLine("-------------------------");
//아이템 수정
for (int i = 0; i < item.Count; i++)
{
if (item.Contains(null))
{
item[i] = "다크 소드";
break;
}
}
foreach (string names in item)
{
Console.WriteLine(names);
}
}
}
gist.github.com/jayu108/dd00cf0648899d413fe9
'C# > 수업내용' 카테고리의 다른 글
0317 배열 복습★★★★ (0) | 2021.03.17 |
---|---|
0316 Collection> Dictionary (0) | 2021.03.16 |
0316 배열 복습 (0) | 2021.03.16 |
0312 상속 inheritance (0) | 2021.03.12 |
0312 생성자 (0) | 2021.03.12 |