Open In App

C# | Array.FindLast() Method

Last Updated : 17 Dec, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

This method is used to search for an element that matches the conditions defined by the specified predicate and returns the last occurrence within the entire Array.

Syntax:

public static T FindLast<T> (T[] array, Predicate<T> match);

Parameters:

array: It is the one-dimensional, zero-based array to search.
match: It is the predicate that defines the conditions of the element to search for.

Return Value: This method returns the last element that matches the conditions defined by the specified predicate if it is found otherwise returns the default value for type T.

Exception: This method throws ArgumentNullException if the array is null or match is null.

Below programs illustrate the use of Array.FindLast(T[], Predicate) Method:

Example 1:

CSHARP




// C# program to demonstrate
// Array.FindLast(T[], Predicate<T>)
// Method
using System;
using System.Collections.Generic;
  
public class GFG {
  
    // Main Method
    public static void Main()
    {
  
        try {
  
            // Creating and initializing
            // new the String
            String[] myArr = {"Sun", "Son", "Tue", "Thu"};
  
            // Display the values of the myArr.
            Console.WriteLine("Initial Array:");
  
            // calling the PrintIndexAndValues()
            // method to print
            PrintIndexAndValues(myArr);
  
            // getting a last element with required
            // condition using method FindLast()
            string value = Array.FindLast(myArr, 
                   element => element.StartsWith("S",
                          StringComparison.Ordinal));
  
            // Display the value of
            // the found element.
            Console.Write("Last occurrence: ");
  
            // printing the string
            // following the condition
            Console.Write("{0}", value);
        }
          
        catch (ArgumentNullException e) {
  
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
  
    // Defining the method
    // PrintIndexAndValues
    public static void PrintIndexAndValues(String[] myArr)
    {
        for (int i = 0; i < myArr.Length; i++) {
  
            Console.WriteLine("{0}", myArr[i]);
        }
        Console.WriteLine();
    }
}


Output:

Initial Array:
Sun
Son
Tue
Thu

Last occurrence: Son

Example 2:

CSHARP




// C# program to demonstrate
// Array.FindLast(T[], Predicate<T>)
// Method
using System;
using System.Collections.Generic;
  
public class GFG {
  
    // Main Method
    public static void Main()
    {
  
        try {
  
            // Creating and initializing
            // new Array String with null
            String[] myArr = null;
  
            // getting a last element with required
            // condition using method FindLast()
            string value = Array.FindLast(myArr,
                element => element.StartsWith("S",
                       StringComparison.Ordinal));
  
            // Display the value of
            // the found element.
            Console.Write("Last occurrence: ");
  
            // printing the string
            // following the condition
            Console.Write("{0}", value);
        }
        catch (ArgumentNullException e) {
  
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
  
    // Defining the method
    // PrintIndexAndValues
    public static void PrintIndexAndValues(String[] myArr)
    {
        for (int i = 0; i < myArr.Length; i++) {
  
            Console.WriteLine("{0}", myArr[i]);
        }
        Console.WriteLine();
    }
}


Output:

Exception Thrown: System.ArgumentNullException

Reference:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads