static void Main(string[] args)
        {
            List <int> list = new List <int>();

            Console.Write("Entre com o número: ");
            int n = int.Parse(Console.ReadLine());

            for (int i = 0; i < n; i++)
            {
                int x = int.Parse(Console.ReadLine());
                list.Add(x);
            }

            CalculationServices calculation = new CalculationServices();
            int max = calculation.Max(list);

            Console.WriteLine("Max: ");
            Console.WriteLine(max);
        }
예제 #2
0
        static void Main(string[] args)
        {
            double a = 10;
            double b = 12;

            /*
             *
             * Delegates....
             *
             */
            Console.WriteLine("***Delegates.....");
            BinaryNumericOperation op = CalculationServices.Sum;

            double result = CalculationServices.Sum(a, b);

            Console.WriteLine("Resultado: " + result);

            double novo = op(a, b);

            Console.WriteLine("função delegate - Resultado: " + novo);


            /*
             *
             * multicast delegates
             *
             */

            Console.WriteLine("\n***Multicast delegates...");
            BinaryNumericOperationM o = CalculationServices.ShowSum;

            o += CalculationServices.ShowMax;

            o.Invoke(a, b);



            /*
             *
             * Predicate...
             *
             */
            Console.WriteLine("\n***Predicate....");
            List <Produto> list = new List <Produto>();

            list.Add(new Produto("Tv", 900.00));
            list.Add(new Produto("Mouse", 50.00));
            list.Add(new Produto("Tablet", 350.50));
            list.Add(new Produto("HD Case", 80.90));
            list.Add(new Produto("suporte", 85.90));

            list.RemoveAll(ProRemove);
            foreach (var x in list)
            {
                Console.WriteLine(x);
            }


            /*
             *
             * Action....
             *
             */
            Console.WriteLine("\n***Action.....");

            Action <Produto> act = UpdPreco;

            list.ForEach(act);

            list.ForEach(UpdPreco);

            foreach (var x in list)
            {
                Console.WriteLine(x);
            }

            /*
             *
             * Func.....
             *
             */
            Console.WriteLine("\n***Func.....");

            //    Func<Produto, string> fun = NomeUpper;
            //    List<string> lista = list.Select(NomeUpper).ToList();
            //    List<string> lista = list.Select(fun).ToList();

            Func <Produto, string> fun   = p => p.Nome.ToUpper();
            List <string>          lista = list.Select(fun).ToList();

            foreach (string s in lista)
            {
                Console.WriteLine(s);
            }
        }