๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅ๏ธ/C#

[์ด๊ฒƒ์ด C#์ด๋‹ค] Chapter15: ์—ฐ์Šต๋ฌธ์ œ (LINQ)

by HanaV 2023. 10. 5.
728x90

1. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฐ์—ด์ด ์žˆ๋‹ค๊ณ  ํ•  ๋•Œ, Cost๋Š” 50์ด์ƒ,  MaxSpeed๋Š” 150 ์ด์ƒ์ธ ๋ ˆ์ฝ”๋“œ๋งŒ ์กฐํšŒํ•˜๋Š” LINQ๋ฅผ ์ž‘์„ฑํ•˜์„ธ์š”.

class Car
    {
        public int Cost { get; set; }
        public int MaxSpeed { get; set; }
    }

    class MainApp
    {
        static void Main(string[] args)
        {
            // ...
            Car[] cars =
            {
                new Car(){Cost= 56, MaxSpeed= 120},
                new Car(){Cost= 70, MaxSpeed= 150},
                new Car(){Cost= 45, MaxSpeed= 180},
                new Car(){Cost= 32, MaxSpeed= 200},
                new Car(){Cost= 82, MaxSpeed= 280}
            };

            var selected = /* Cost๊ฐ€ 50 ์ด์ƒ, MaxSpeed๋Š” 150 ์ด์ƒ์ธ ๋ ˆ์ฝ”๋“œ๋ฅผ ์กฐํšŒํ•˜๋Š” LINQ */;

๋‹ต)

var selected = from car in cars
                           where car.Cost >= 50 && car.MaxSpeed >= 150
                           select car;
            foreach (var car in selected) {
                Console.WriteLine($"Car's Cost: {car.Cost}, Car's MaxSpeed: {car.MaxSpeed}");
            }
Car's Cost: 70, Car's MaxSpeed: 150
Car's Cost: 82, Car's MaxSpeed: 280

 

2. ๋‹ค์Œ ์ฝ”๋“œ์—์„œ cars.Where( c => c.Cost < 60).OrderBy(c => c.Cost)์™€ ๋™์ผํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” LINQ๋ฅผ ์ž‘์„ฑํ•˜์„ธ์š”.

class Car
        {
            public int Cost { get; set; }
            public int MaxSpeed { get; set; }
        }

        static void Main(string[] args)
        {
            Car[] cars =
            {
                new Car(){Cost= 56, MaxSpeed= 120},
                new Car(){Cost= 70, MaxSpeed= 150},
                new Car(){Cost= 45, MaxSpeed= 180},
                new Car(){Cost= 32, MaxSpeed= 200},
                new Car(){Cost= 82, MaxSpeed= 280}
            };

            var selected = cars.Where(c => c.Cost < 60).OrderBy(c => c.Cost);

๋‹ต)

var selected = from car in cars
                           where car.Cost < 60
                           orderby car.Cost
                           select car;
            foreach (var car in selected) {
                Console.WriteLine($"Car's Cost: {car.Cost}, Car's MaxSpeed: {car.MaxSpeed}");
            }
Car's Cost: 32, Car's MaxSpeed: 200
Car's Cost: 45, Car's MaxSpeed: 180
Car's Cost: 56, Car's MaxSpeed: 120
728x90

"); wcs_do();