C#/C#_기초강의
(C#) List<T> 리스트 제네릭 클래스(Generic Class)
코딩ABC
2023. 4. 23. 07:12
반응형
List<T> 클래스는 인덱스로 액세스할 수 있는 강력한 형식의 개체 목록을 나타냅니다.
목록의 검색, 정렬 및 조작에 사용할 수 있는 메서드와 속성을 제공합니다.
네임스페이스: System.Collections.Generic |
List<T> 클래스는 다음과 같은 메서드와 속성이 있습니다.
메서드 또는 속성 | 설명 |
Add(item) | 항목(item)을 맨 뒤에 추가합니다. |
Insert(int index, item) | 항목을 index로 설정된 위치에 삽입합니다. |
Count | 항목의 개수를 나타냅니다. |
Clear() | 모든 요소를 제거합니다. |
Contains(item) | bool. 항목이 있는지 여부를 나타냅니다. |
Remove(item) | 첫 번째로 나타나는 item를 제거합니다. |
RemoveAt(int index) | Index 번째의 요소를 제거합니다. |
IndexOf(item) | 첫 번째로 나타난 항목의 인덱스를 반환합니다. |
LastIndexOf(item) | 마지막으로 나타난 항목의 인덱스를 반환합니다. |
Sort() | 크기순으로 정렬합니다. |
Reverse() | 순서를 반대로 바꿉니다. |
List<T> 클래스를 이용한 간단한 예제입니다.
데이터는 Random 클래스로 임의의 수를 생성하도록 했습니다.
using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace 제네릭_1
{
public partial class Form1 : Form
{
List<int> list = new List<int>();
public Form1()
{
InitializeComponent();
}
private void Print()
{
listBox1.Items.Clear();
for (int i=0; i<list.Count; i++)
{
listBox1.Items.Add(list[i]);
}
}
private void btnDelete_Click(object sender, EventArgs e)
{
if (listBox1.SelectedIndex < 0)
{
MessageBox.Show("삭제할 항목을 선택해주세요.");
return;
}
list.RemoveAt(listBox1.SelectedIndex);
Print();
}
private void btnAdd_Click(object sender, EventArgs e)
{
Random r = new Random();
list.Add(r.Next(1000));
Print();
}
private void button1_Click(object sender, EventArgs e)
{
Random r = new Random();
list.Insert(0, r.Next(1000));
Print();
}
private void button2_Click(object sender, EventArgs e)
{
list.Sort();
Print();
}
private void button3_Click(object sender, EventArgs e)
{
list.Reverse();
Print();
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
반응형