Searches for the specified object and returns the index of the last occurrence within the range of elements in the one-dimensional Array that contains the specified number of elements and ends at the specified index.
- array
- The one-dimensional Array to search.
- value
- The object to locate in array.
- startIndex
- The starting index of the backward search.
- count
- The number of elements in the section to search.
The index of the last occurrence of value within the range of elements in array that contains the number of elements specified in count and ends at startIndex, if found; otherwise, the lower bound of the array minus 1.
Type Reason ArgumentNullException array is null. ArgumentOutOfRangeException startIndex is outside the range of valid indices for array.
-or-
count < 0.
-or-
count is greater than startIndex + 1.
RankException array has more than one dimension.
The one-dimensional Array is searched backward starting at startIndex and ending at startIndex minus count plus 1, if count is greater than 0.
The elements are compared to the specified value using the object.Equals(object) method. If the element type is a nonintrinsic (user-defined) type, the Equals implementation of that type is used.
Since most arrays will have a lower bound of zero, this method would generally return –1 when value is not found. In the rare case that the lower bound of the array is equal to int.MinValue and value is not found, this method returns int.MaxValue, which is System.Int32.MinValue - 1.
This method is an O(n) operation, where n is count.
In the .NET Framework version 2.0, this method uses the object.Equals(object) and IComparable.CompareTo(object) methods of the Array to determine whether the object specified by the value parameter exists. In the earlier versions of the .NET Framework, this determination was made by using the object.Equals(object) and IComparable.CompareTo(object) methods of the value object itself.