[C#] List에서 요소 추출하기.

빵욱·2024년 6월 21일

List에서 특정 요소를 가진 객체를 반환하기.

Test용 Class

class TestItem
{
    public string Name { get; set; }
    public int Level { get; set; }

    public TestItem(string name, int level)
    {
        Name = name;
        Level = level;
    }   

}

이 리스트에서 특정 Name을 가진 아이템 반환.

List<TestItem> list = new List<TestItem>();

for (int i = 0; i < 10; i++)
{

    var ti = new TestItem($"test{i}", i);
    list.Add(ti);   
}

List에 아이템 10개 추가.

 var ti2 = list.FirstOrDefault(item => item.Name == "test4") ?? new TestItem("", 0);
 Console.WriteLine(ti2.Name + "\n\n");

FirstOrDefault를 이용해서 특정 요소를 가진 아이템 반환.
FirstOrDefault 해당 되는 아이템이 없을 경우 null을 반환하는데 ??를 사용해서
null일 경우 특정 객체를 반환하도록 할 수 있다.

TestItem 에서 Name만 List로 반환하기.

  var tiNameList = list.Select(item => item.Name).ToList() ?? new List<string>();

  foreach (var item in tiNameList)
  {
      Console.WriteLine(item);
  }

Select 를 이용해서 TestItem의 Name만 리스트로 반환했다.
Select도 null을 반환할 수 있으므로 ?? new List<string>() 추가해서 null일 경우 빈 리스트를 반환하도록 함.

profile
rove drink eat

0개의 댓글