zoukankan      html  css  js  c++  java
  • Predicate 学习

     class Point
        {
            double x, y;
            public Point(double x, double y)
            {
                this.x = x;
                this.y = y;
            }
    
            public double X
            {
                get { return this.x; }
            }
    
            public double Y
            {
                get { return this.y; }
            }
        }
    
        class Program
        {
            static void Main(string[] args)
            {
                // Create an array of five Point structures.
                Point[] points = { new Point(100, 200), 
                new Point(150, 250), new Point(250, 375), 
                new Point(275, 395), new Point(295, 450) };
    
                // To find the first Point structure for which X times Y 
                // is greater than 100000, pass the array and a delegate
                // that represents the ProductGT10 method to the static 
                // Find method of the Array class. 
                //public static T Find<T>(T[] array, Predicate<T> match);
                Point first = Array.Find(points, CheckMax);
    
               // Predicate<T> productMax = CheckMax;
    
                // Note that you do not need to create the delegate 
                // explicitly, or to specify the type parameter of the 
                // generic method, because the C# compiler has enough
                // context to determine that information for you.
    
                // Display the first structure found.
                Console.WriteLine("Found: X = {0}, Y = {1}", first.X, first.Y);
                Console.ReadLine();
            }
    
            // This method implements the test condition for the Find
            // method.
            private static bool ProductGT10(Point p)
            {
                if (p.X * p.Y > 100000)
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
    
            private static bool CheckMax(Point p)
            {
                return p.X > 200 && p.Y > 200;
            }
    
        }
  • 相关阅读:
    SQL server 数据库迁移到mysql
    MVC+EF之仓库模式
    MVC+EF之多表关联数据更新
    省市联动下拉菜单的实现
    MVC+EF之Attribute
    网页制作
    MVC5+EF6之排序、过滤、分页
    MVC5+EF6之分部视图(Partial View)
    Bookstap初步了解
    java8新特性学习三(Stream API)
  • 原文地址:https://www.cnblogs.com/xiaokang088/p/2685266.html
Copyright © 2011-2022 走看看