static void Main(string[] args)
        {
            Func <int, int>      potegowanie = x => x * x;
            Func <int, int, int> dodawanie   = (int a, int b) =>
            {
                var temp = a + b;
                return(temp);
            };

            Action <int> wypisz = x => Console.WriteLine(x);

            wypisz(potegowanie(dodawanie(2, 1)));

            var programisci = new Pracownik[]
            {
                new Pracownik {
                    Id = 1, Imie = "Marcin", Nazwisko = "Nowak"
                },
                new Pracownik {
                    Id = 2, Imie = "Tomek", Nazwisko = "Kowal"
                },
                new Pracownik {
                    Id = 3, Imie = "Jacek", Nazwisko = "Sobota"
                },
                new Pracownik {
                    Id = 4, Imie = "Adam", Nazwisko = "Wrona"
                }
            };

            var kierowcy = new List <Pracownik>()
            {
                new Pracownik {
                    Id = 5, Imie = "Olek", Nazwisko = "Sroka"
                },
                new Pracownik {
                    Id = 6, Imie = "Pawel", Nazwisko = "Wrobel"
                },
                new Pracownik {
                    Id = 7, Imie = "Marek", Nazwisko = "Piatek"
                }
            };

            var zapytanie = programisci.Where(p => p.Imie.Length == 5)
                            .OrderByDescending(p => p.Imie)
                            .Select(p => p);

            var zapytanie2 = from programista in programisci
                             where programista.Imie.Length == 5
                             orderby programista.Imie descending
                             select programista;

            var ilosc = zapytanie2.Count();

            foreach (var osoba in zapytanie2)
            {
                Console.WriteLine(osoba.Imie);
            }
        }
Example #2
0
        static void Main(string[] args)
        {
            IEnumerable <Pracownik> programisci = new Pracownik[]
            {
                new Pracownik {
                    Id = 1, Imie = "Marcin", Nazwisko = "Kowlski"
                },
                new Pracownik {
                    Id = 2, Imie = "Tomek", Nazwisko = "Sobota"
                },
                new Pracownik {
                    Id = 3, Imie = "Krzysztof", Nazwisko = "Bosak"
                },
                new Pracownik {
                    Id = 4, Imie = "Marcin", Nazwisko = "Maniura"
                },
            };

            IEnumerable <Pracownik> kierowcy = new List <Pracownik>
            {
                new Pracownik {
                    Id = 5, Imie = "Andrzej", Nazwisko = "Krzywy"
                },
                new Pracownik {
                    Id = 6, Imie = "Franciszek", Nazwisko = "Bielas"
                },
                new Pracownik {
                    Id = 7, Imie = "Anna", Nazwisko = "Szara"
                },
            };

            // foreach (var osoba in programisci)
            // {

            //    Console.WriteLine(osoba.Imie + " " + osoba.Nazwisko);

            // }

            IEnumerator <Pracownik> enumerator = kierowcy.GetEnumerator();

            while (enumerator.MoveNext())
            {
                Console.WriteLine(enumerator.Current.Imie);
            }
        }
 private static bool RozpoczynaNaM(Pracownik pracownik)
 {
     return(pracownik.Imie.StartsWith("M"));
 }
Example #4
0
        static void Main(string[] args)
        {
            Console.WriteLine("Delegat Func:");
            Func <int, int> potegowanie = x => x * x;

            Console.WriteLine(potegowanie(2));
            Func <int, int, int> dodawanie = (a, b) => a + b;

            Console.WriteLine(dodawanie(2, 3));
            Console.WriteLine();
            Console.WriteLine("Delegat Action");
            Action <int> wypisz = x => Console.WriteLine(x);

            wypisz(potegowanie(dodawanie(2, 3)));
            Console.WriteLine("=================");

            var programisci = new Pracownik[]
            {
                new Pracownik(1, "Marcin", "Nowak"),
                new Pracownik(2, "Tomek", "Kowal"),
                new Pracownik(3, "Jacek", "Sobota"),
                new Pracownik(4, "Adam", "Wrona")
            };

            var kierowcy = new List <Pracownik>
            {
                new Pracownik(5, "Olek", "Sroka"),
                new Pracownik(6, "Paweł", "Wróbel"),
                new Pracownik(7, "Marek", "Piątek")
            };

            Console.WriteLine(programisci.Count());
            Console.WriteLine(kierowcy.Count());
            Console.WriteLine("=================");
            Console.WriteLine("Enumerator");
            var enumerator = programisci.GetEnumerator();

            while (enumerator.MoveNext())
            {
                Console.WriteLine(enumerator.Current);
            }

            Console.WriteLine("=================");
            Console.WriteLine("Wyrażenia Lambda:\n");

            var zapytanie = programisci.Where(p => p.Imie.Length == 5)
                            .OrderByDescending(p => p.Imie);
            //składnie zapytania (poniżej) jest tłumaczona przez kompilator
            //na składnię metody (powyżej)
            //niektóre operatory (jak np. Count) dostępne są wyłącznie
            //przez składnię metody
            var zapytanie2 = from programista in programisci
                             where programista.Imie.Length == 5
                             orderby programista.Imie descending
                             select programista;
            //używając składni zapytania, jeżeli konieczne staje się
            //wywołanie Count, można to zrobić przez skłądnię metody
            //jak poniżej
            var ilosc = zapytanie2.Count();

            foreach (var osoba in zapytanie2)
            {
                Console.WriteLine(osoba);
            }
        }