milosev.com
  • Home
    • List all categories
    • Sitemap
  • Downloads
    • WebSphere
    • Hitachi902
    • Hospital
    • Kryptonite
    • OCR
    • APK
  • About me
    • Gallery
      • Italy2022
    • Curriculum vitae
      • Resume
      • Lebenslauf
    • Social networks
      • Facebook
      • Twitter
      • LinkedIn
      • Xing
      • GitHub
      • Google Maps
      • Sports tracker
    • Adventures planning
  1. You are here:  
  2. Home
  3. C#
  4. LINQ

Number of years of oldest child in a list of parents

Details
Written by: Stanko Milosev
Category: LINQ
Published: 09 August 2018
Last Updated: 23 August 2018
Hits: 2661
One example to find out number of years of oldest child in a list of parents.
using System;
using System.Collections.Generic;
using System.Linq;

namespace LINQtest
{

    public class Child
    {
        public int Age { get; set; }
    }

    public class Parent
    {
        public Child[] Kids { get; set; }
    }

    public class MyLinq
    {
        public List<Parent> Parents { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Parent parentOne = new Parent();
            parentOne.Kids = new Child[2];

            parentOne.Kids[0] = new Child();
            parentOne.Kids[0].Age = 1;

            parentOne.Kids[1] = new Child();
            parentOne.Kids[1].Age = 2;

            Parent parentTwo = new Parent();
            parentTwo.Kids = new Child[3];
            parentTwo.Kids[0] = new Child();
            parentTwo.Kids[0].Age = 5;
            parentTwo.Kids[1] = new Child();
            parentTwo.Kids[1].Age = 7;
            parentTwo.Kids[2] = new Child();
            parentTwo.Kids[2].Age = 6;

            Parent parentThree = new Parent();
            parentThree.Kids = new Child[2];
            parentThree.Kids[0] = new Child();
            parentThree.Kids[0].Age = 3;

            parentThree.Kids[1] = new Child();
            parentThree.Kids[1].Age = 4;

            MyLinq myLinq = new MyLinq();
            myLinq.Parents = new List();
            myLinq.Parents.Add(parentOne);
            myLinq.Parents.Add(parentTwo);
            myLinq.Parents.Add(parentThree);

            int maxAge = myLinq.Parents.Max(parent => parent.Kids.Max(kid => kid.Age));

            Console.WriteLine("Oldest kid is age of: " + maxAge);
            Console.WriteLine("Press any key");
            Console.ReadKey();
        }
    }
}

POI:

int maxAge = myLinq.Parents.Max(parent => parent.Kids.Max(kid => kid.Age));

Because for example code:

IEnumerable<int> maxAges = myLinq.Parents.Select(parent => parent.Kids.Max(kid => kid.Age));

Will return collection of ages in list of parents.

Simple example

Details
Written by: Stanko Milosev
Category: LINQ
Published: 04 June 2016
Last Updated: 04 June 2016
Hits: 3051

One dummy example of LINQ:

using System;
using System.Linq;

namespace linqExamples
{
  class Program
  {
    static void Main(string[] args)
    {
      string s = "Test";
      var test = s.Select(d => "b");
      foreach(var b in test)
      {
        Console.WriteLine(b);
      }
      Console.ReadKey();
    }
  }
}