C#/복습

Linq

Game Client Lee Hwanguk 2023. 1. 15. 23:06

#배열 items를 만들고 개체이니셜라이져를 통해 인스턴스 생성

#for문과 foreach를 이용하여 순회

using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace ConsoleApp5
{
    internal class App
    {
        
        public App() //#6 람다연습
        {
            Item[] items = {
                new Item(){ Name="장검", Damage = 10},
                new Item(){ Name="단검", Damage = 5},
                new Item(){ Name="창", Damage = 11},
                new Item(){ Name="도끼", Damage = 8},
                new Item(){ Name="지팡이", Damage = 3},
                new Item(){ Name="활", Damage = 6},
                new Item(){ Name="철퇴", Damage = 7},
            };

            foreach(Item item in items)
            {
                Console.WriteLine("Name:{0}, Damage:{1}",item.Name,item.Damage);
            }
            Console.WriteLine();
            for(int i=0; i<items.Length; i++)
            {
                Console.WriteLine("Name:{0}, Damage:{1}", items[i].Name, items[i].Damage);
                
            }    
        }


    }
}

#Linq 사용 

#from (foreach in과 비슷하다)

#where 조건

#orderby 오름,내림차순

select 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace ConsoleApp5
{
    internal class App
    {
        class Profiles
        {
            public string Name { get; set; }
            public int Height { get; set; }
        }
        public App() //#6 람다연습(교제 .516p)
        {
            Profiles[] arrProfile = {new Profiles(){Name="정우성",Height=186},
            new Profiles(){Name="김태희",Height=158},
            new Profiles(){Name="고현정",Height=172},
            new Profiles(){Name="이문세",Height=178},
            new Profiles(){Name="하하",Height=171} };


            var profiles = from profile in arrProfile
                           where profile.Height < 175
                           orderby profile.Height
                           select profile;

            foreach(var profile in profiles)
            {
                Console.WriteLine("{0}, {1}",profile.Name,profile.Height);
            }
        

            

        }

        


    }
}