Array.IndexOf Array.IndexOf Array.IndexOf Array.IndexOf Method

Definicja

Wyszukuje określony obiekt i zwraca indeks jego pierwszego wystąpienia w tablicy jednowymiarowej lub w zakresie elementów w tablicy.Searches for the specified object and returns the index of its first occurrence in a one-dimensional array or in a range of elements in the array.

Przeciążenia

IndexOf(Array, Object) IndexOf(Array, Object) IndexOf(Array, Object)

Wyszukuje określony obiekt i zwraca indeks jego pierwszego wystąpienia w tablicy jednowymiarowej.Searches for the specified object and returns the index of its first occurrence in a one-dimensional array.

IndexOf(Array, Object, Int32) IndexOf(Array, Object, Int32) IndexOf(Array, Object, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia.Searches for the specified object in a range of elements of a one-dimensional array, and returns the index of its first occurrence. Zakres rozciąga się od określonego indeksu do końca tablicy.The range extends from a specified index to the end of the array.

IndexOf(Array, Object, Int32, Int32) IndexOf(Array, Object, Int32, Int32) IndexOf(Array, Object, Int32, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia IFS.Searches for the specified object in a range of elements of a one-dimensional array, and returns the index of ifs first occurrence. Zakres rozciąga się od określonego indeksu dla określonej liczby elementów.The range extends from a specified index for a specified number of elements.

IndexOf<T>(T[], T, Int32, Int32) IndexOf<T>(T[], T, Int32, Int32) IndexOf<T>(T[], T, Int32, Int32) IndexOf<T>(T[], T, Int32, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia.Searches for the specified object in a range of elements of a one-dimensional array, and returns the index of its first occurrence. Zakres rozciąga się od określonego indeksu dla określonej liczby elementów.The range extends from a specified index for a specified number of elements.

IndexOf<T>(T[], T) IndexOf<T>(T[], T) IndexOf<T>(T[], T) IndexOf<T>(T[], T)

Wyszukuje określony obiekt i zwraca indeks jego pierwszego wystąpienia w tablicy jednowymiarowej.Searches for the specified object and returns the index of its first occurrence in a one-dimensional array.

IndexOf<T>(T[], T, Int32) IndexOf<T>(T[], T, Int32) IndexOf<T>(T[], T, Int32) IndexOf<T>(T[], T, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia.Searches for the specified object in a range of elements of a one dimensional array, and returns the index of its first occurrence. Zakres rozciąga się od określonego indeksu do końca tablicy.The range extends from a specified index to the end of the array.

IndexOf(Array, Object) IndexOf(Array, Object) IndexOf(Array, Object)

Wyszukuje określony obiekt i zwraca indeks jego pierwszego wystąpienia w tablicy jednowymiarowej.Searches for the specified object and returns the index of its first occurrence in a one-dimensional array.

public:
 static int IndexOf(Array ^ array, System::Object ^ value);
public static int IndexOf (Array array, object value);
static member IndexOf : Array * obj -> int

Parametry

array
Array Array Array Array

Tablica Jednowymiarowa do przeszukania.The one-dimensional array to search.

value
Object Object Object Object

Obiekt, w arrayktórym ma zostać zlokalizowany.The object to locate in array.

Zwraca

Indeks pierwszego wystąpienia value w array, jeśli został znaleziony; w przeciwnym razie Dolna granica tablicy minus 1.The index of the first occurrence of value in array, if found; otherwise, the lower bound of the array minus 1.

Wyjątki

arrayjest wielowymiarowych.array is multidimensional.

Przykłady

Przykład wywołuje następujące trzy przeciążenia IndexOf metody, aby znaleźć indeks ciągu w tablicy ciągów:The example calls the following three overloads of the IndexOf method to find the index of a string in a string array:

using namespace System;

void main()
{
   // Create a string array with 3 elements having the same value.
   array<String^>^ strings = { "the", "quick", "brown", "fox",
                               "jumps", "over", "the", "lazy", "dog",
                               "in", "the", "barn" };

   // Display the elements of the array.
   Console::WriteLine("The array contains the following values:");
   for (int i = strings->GetLowerBound(0); i <= strings->GetUpperBound(0); i++)
      Console::WriteLine("   [{0,2}]: {1}", i, strings[i]);
      
   // Search for the first occurrence of the duplicated value.
   String^ searchString =  "the";
   int index = Array::IndexOf(strings, searchString);
   Console::WriteLine("The first occurrence of \"{0}\" is at index {1}.",
                      searchString, index);

   // Search for the first occurrence of the duplicated value in the last section of the array.
   index = Array::IndexOf( strings, searchString, 4);
   Console::WriteLine("The first occurrence of \"{0}\" between index 4 and the end is at index {1}.",
                      searchString, index);

   // Search for the first occurrence of the duplicated value in a section of the array.
   int position = index + 1;
   index = Array::IndexOf(strings, searchString, position, strings->GetUpperBound(0) - position + 1);
   Console::WriteLine("The first occurrence of \"{0}\" between index {1} and index {2} is at index {3}.",
                      searchString, position, strings->GetUpperBound(0), index);
}
// The example displays the following output:
//    The array contains the following values:
//       [ 0]: the
//       [ 1]: quick
//       [ 2]: brown
//       [ 3]: fox
//       [ 4]: jumps
//       [ 5]: over
//       [ 6]: the
//       [ 7]: lazy
//       [ 8]: dog
//       [ 9]: in
//       [10]: the
//       [11]: barn
//    The first occurrence of "the" is at index 0.
//    The first occurrence of "the" between index 4 and the end is at index 6.
//    The first occurrence of "the" between index 7 and index 11 is at index 10.
using System;

public class Example
{
    public static void Main()
    {
       // Create a string array with 3 elements having the same value.
       String[] strings = { "the", "quick", "brown", "fox", "jumps",
                            "over", "the", "lazy", "dog", "in", "the",
                            "barn" };

       // Display the elements of the array.
       Console.WriteLine("The array contains the following values:");
       for (int i = strings.GetLowerBound(0); i <= strings.GetUpperBound(0); i++)
          Console.WriteLine("   [{0,2}]: {1}", i, strings[i]);

       // Search for the first occurrence of the duplicated value.
       String searchString = "the";
       int index = Array.IndexOf(strings, searchString);
       Console.WriteLine("The first occurrence of \"{0}\" is at index {1}.",
                         searchString, index);
 
       // Search for the first occurrence of the duplicated value in the last section of the array.
       index = Array.IndexOf(strings, searchString, 4);
       Console.WriteLine("The first occurrence of \"{0}\" between index 4 and the end is at index {1}.",
                         searchString, index);
 
       // Search for the first occurrence of the duplicated value in a section of the array.
       int position = index + 1;
       index = Array.IndexOf(strings, searchString, position, strings.GetUpperBound(0) - position + 1);
       Console.WriteLine("The first occurrence of \"{0}\" between index {1} and index {2} is at index {3}.",
                         searchString, position, strings.GetUpperBound(0), index);
    }
 }
// The example displays the following output:
//    The array contains the following values:
//       [ 0]: the
//       [ 1]: quick
//       [ 2]: brown
//       [ 3]: fox
//       [ 4]: jumps
//       [ 5]: over
//       [ 6]: the
//       [ 7]: lazy
//       [ 8]: dog
//       [ 9]: in
//       [10]: the
//       [11]: barn
//    The first occurrence of "the" is at index 0.
//    The first occurrence of "the" between index 4 and the end is at index 6.
//    The first occurrence of "the" between index 7 and index 11 is at index 10.
Public Module Example
   Public Sub Main()
      ' Create a string array with 3 elements having the same value.
      Dim strings() As String = { "the", "quick", "brown", "fox",
                                  "jumps", "over", "the", "lazy",
                                  "dog", "in", "the", "barn" }

      ' Display the values of the array.
      Console.WriteLine("The array contains the following values:")
      For i As Integer = strings.GetLowerBound(0) To strings.GetUpperBound(0)
         Console.WriteLine("   [{0,2}]: {1}", i, strings(i))
      Next

      ' Search for the first occurrence of the duplicated value.
      Dim searchString As String = "the"
      Dim index As Integer = Array.IndexOf(strings, searchString)
      Console.WriteLine("The first occurrence of ""{0}"" is at index {1}.",
                        searchString, index)
        
      ' Search for the first occurrence of the duplicated value in the last section of the array.
      index = Array.IndexOf(strings, searchString, 4)
      Console.WriteLine("The first occurrence of ""{0}"" between index 4 and the end is at index {1}.",
                        searchString, index)
        
      ' Search for the first occurrence of the duplicated value in a section of the array.
       Dim position As Integer = index + 1
       index = Array.IndexOf(strings, searchString, position, strings.GetUpperBound(0) - position + 1)
       Console.WriteLine("The first occurrence of ""{0}"" between index {1} and index {2} is at index {3}.",
                         searchString, position, strings.GetUpperBound(0), index)
    End Sub
End Module
' The example displays the following output:
'    The array contains the following values:
'       [ 0]: the
'       [ 1]: quick
'       [ 2]: brown
'       [ 3]: fox
'       [ 4]: jumps
'       [ 5]: over
'       [ 6]: the
'       [ 7]: lazy
'       [ 8]: dog
'       [ 9]: in
'       [10]: the
'       [11]: barn
'    The first occurrence of "the" is at index 0.
'    The first occurrence of "the" between index 4 and the end is at index 6.
'    The first occurrence of "the" between index 7 and index 11 is at index 10.

Uwagi

Ta metoda przeszukuje wszystkie elementy tablicy jednowymiarowej dla value.This method searches all the elements of a one-dimensional array for value. Aby określić, value czy istnieje arrayw, Metoda wykonuje porównanie równości Equals przez wywołanie metody każdego elementu do momentu znalezienia dopasowania.To determine whether value exists in array, the method performs an equality comparison by calling each element's Equals method until it finds a match. Oznacza to, że jeśli element przesłania Object.Equals(Object) metodę, to zastępowanie jest wywoływane.This means that if the element overrides the Object.Equals(Object) method, that override is called.

Ponieważ większość tablic ma dolną granicę zero, ta metoda zwykle zwraca wartość-1value , jeśli nie zostanie znaleziona.Because most arrays have a lower bound of zero, this method generally returns -1 ifvalue isn't found. W rzadkich przypadkach Dolna granica tablicy jest równa Int32.MinValue(0x80000000) i value nie można jej odnaleźć, ta metoda zwraca Int32.MaxValue (0x7FFFFFFF).In the rare case that the lower bound of the array is equal to Int32.MinValue(0x80000000) and value isn't found, this method returns Int32.MaxValue (0x7FFFFFFF).

Ta metoda jest operacją on(), gdzie n jest Length z array.This method is an O(n) operation, where n is the Length of array.

Zobacz też

IndexOf(Array, Object, Int32) IndexOf(Array, Object, Int32) IndexOf(Array, Object, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia.Searches for the specified object in a range of elements of a one-dimensional array, and returns the index of its first occurrence. Zakres rozciąga się od określonego indeksu do końca tablicy.The range extends from a specified index to the end of the array.

public:
 static int IndexOf(Array ^ array, System::Object ^ value, int startIndex);
public static int IndexOf (Array array, object value, int startIndex);
static member IndexOf : Array * obj * int -> int

Parametry

array
Array Array Array Array

Tablica Jednowymiarowa do przeszukania.The one-dimensional array to search.

value
Object Object Object Object

Obiekt, w arrayktórym ma zostać zlokalizowany.The object to locate in array.

startIndex
Int32 Int32 Int32 Int32

Początkowy indeks wyszukiwania.The starting index of the search. 0 (zero) jest prawidłową wartością w pustej tablicy.0 (zero) is valid in an empty array.

Zwraca

Indeks pierwszego wystąpienia value, jeśli znajduje się w zakresie elementów w array , który rozciąga się od startIndex do ostatniego elementu; w przeciwnym razie Dolna granica tablicy minus 1.The index of the first occurrence of value, if it's found, within the range of elements in array that extends from startIndex to the last element; otherwise, the lower bound of the array minus 1.

Wyjątki

startIndexznajduje się poza zakresem prawidłowych indeksów arraydla.startIndex is outside the range of valid indexes for array.

arrayjest wielowymiarowych.array is multidimensional.

Przykłady

Przykład wywołuje następujące trzy przeciążenia IndexOf metody, aby znaleźć indeks ciągu w tablicy ciągów:The example calls the following three overloads of the IndexOf method to find the index of a string in a string array:

using namespace System;

void main()
{
   // Create a string array with 3 elements having the same value.
   array<String^>^ strings = { "the", "quick", "brown", "fox",
                               "jumps", "over", "the", "lazy", "dog",
                               "in", "the", "barn" };

   // Display the elements of the array.
   Console::WriteLine("The array contains the following values:");
   for (int i = strings->GetLowerBound(0); i <= strings->GetUpperBound(0); i++)
      Console::WriteLine("   [{0,2}]: {1}", i, strings[i]);
      
   // Search for the first occurrence of the duplicated value.
   String^ searchString =  "the";
   int index = Array::IndexOf(strings, searchString);
   Console::WriteLine("The first occurrence of \"{0}\" is at index {1}.",
                      searchString, index);

   // Search for the first occurrence of the duplicated value in the last section of the array.
   index = Array::IndexOf( strings, searchString, 4);
   Console::WriteLine("The first occurrence of \"{0}\" between index 4 and the end is at index {1}.",
                      searchString, index);

   // Search for the first occurrence of the duplicated value in a section of the array.
   int position = index + 1;
   index = Array::IndexOf(strings, searchString, position, strings->GetUpperBound(0) - position + 1);
   Console::WriteLine("The first occurrence of \"{0}\" between index {1} and index {2} is at index {3}.",
                      searchString, position, strings->GetUpperBound(0), index);
}
// The example displays the following output:
//    The array contains the following values:
//       [ 0]: the
//       [ 1]: quick
//       [ 2]: brown
//       [ 3]: fox
//       [ 4]: jumps
//       [ 5]: over
//       [ 6]: the
//       [ 7]: lazy
//       [ 8]: dog
//       [ 9]: in
//       [10]: the
//       [11]: barn
//    The first occurrence of "the" is at index 0.
//    The first occurrence of "the" between index 4 and the end is at index 6.
//    The first occurrence of "the" between index 7 and index 11 is at index 10.
using System;

public class Example
{
    public static void Main()
    {
       // Create a string array with 3 elements having the same value.
       String[] strings = { "the", "quick", "brown", "fox", "jumps",
                            "over", "the", "lazy", "dog", "in", "the",
                            "barn" };

       // Display the elements of the array.
       Console.WriteLine("The array contains the following values:");
       for (int i = strings.GetLowerBound(0); i <= strings.GetUpperBound(0); i++)
          Console.WriteLine("   [{0,2}]: {1}", i, strings[i]);

       // Search for the first occurrence of the duplicated value.
       String searchString = "the";
       int index = Array.IndexOf(strings, searchString);
       Console.WriteLine("The first occurrence of \"{0}\" is at index {1}.",
                         searchString, index);
 
       // Search for the first occurrence of the duplicated value in the last section of the array.
       index = Array.IndexOf(strings, searchString, 4);
       Console.WriteLine("The first occurrence of \"{0}\" between index 4 and the end is at index {1}.",
                         searchString, index);
 
       // Search for the first occurrence of the duplicated value in a section of the array.
       int position = index + 1;
       index = Array.IndexOf(strings, searchString, position, strings.GetUpperBound(0) - position + 1);
       Console.WriteLine("The first occurrence of \"{0}\" between index {1} and index {2} is at index {3}.",
                         searchString, position, strings.GetUpperBound(0), index);
    }
 }
// The example displays the following output:
//    The array contains the following values:
//       [ 0]: the
//       [ 1]: quick
//       [ 2]: brown
//       [ 3]: fox
//       [ 4]: jumps
//       [ 5]: over
//       [ 6]: the
//       [ 7]: lazy
//       [ 8]: dog
//       [ 9]: in
//       [10]: the
//       [11]: barn
//    The first occurrence of "the" is at index 0.
//    The first occurrence of "the" between index 4 and the end is at index 6.
//    The first occurrence of "the" between index 7 and index 11 is at index 10.
Public Module Example
   Public Sub Main()
      ' Create a string array with 3 elements having the same value.
      Dim strings() As String = { "the", "quick", "brown", "fox",
                                  "jumps", "over", "the", "lazy",
                                  "dog", "in", "the", "barn" }

      ' Display the values of the array.
      Console.WriteLine("The array contains the following values:")
      For i As Integer = strings.GetLowerBound(0) To strings.GetUpperBound(0)
         Console.WriteLine("   [{0,2}]: {1}", i, strings(i))
      Next

      ' Search for the first occurrence of the duplicated value.
      Dim searchString As String = "the"
      Dim index As Integer = Array.IndexOf(strings, searchString)
      Console.WriteLine("The first occurrence of ""{0}"" is at index {1}.",
                        searchString, index)
        
      ' Search for the first occurrence of the duplicated value in the last section of the array.
      index = Array.IndexOf(strings, searchString, 4)
      Console.WriteLine("The first occurrence of ""{0}"" between index 4 and the end is at index {1}.",
                        searchString, index)
        
      ' Search for the first occurrence of the duplicated value in a section of the array.
       Dim position As Integer = index + 1
       index = Array.IndexOf(strings, searchString, position, strings.GetUpperBound(0) - position + 1)
       Console.WriteLine("The first occurrence of ""{0}"" between index {1} and index {2} is at index {3}.",
                         searchString, position, strings.GetUpperBound(0), index)
    End Sub
End Module
' The example displays the following output:
'    The array contains the following values:
'       [ 0]: the
'       [ 1]: quick
'       [ 2]: brown
'       [ 3]: fox
'       [ 4]: jumps
'       [ 5]: over
'       [ 6]: the
'       [ 7]: lazy
'       [ 8]: dog
'       [ 9]: in
'       [10]: the
'       [11]: barn
'    The first occurrence of "the" is at index 0.
'    The first occurrence of "the" between index 4 and the end is at index 6.
'    The first occurrence of "the" between index 7 and index 11 is at index 10.

Uwagi

Ta metoda przeszukuje tablicę jednowymiarową z elementu pod indeksem startIndex do ostatniego elementu.This method searches a one-dimensional array from the element at index startIndex to the last element. Aby określić, value czy istnieje arrayw, Metoda wykonuje porównanie Equals równości przez wywołanie metody każdego elementu do momentu znalezienia dopasowania.To determine whether value exists in array, the method performs an equality comparison by calling the Equals method of every element until it finds a match. Oznacza to, że jeśli element przesłania Object.Equals(Object) metodę, to zastępowanie jest wywoływane.This means that if the element overrides the Object.Equals(Object) method, that override is called.

Ponieważ większość tablic ma dolną granicę zero, ta metoda zwykle zwraca wartość-1 value , jeśli nie zostanie znaleziona.Because most arrays have a lower bound of zero, this method generally returns -1 if value isn't found. W rzadkich przypadkach Dolna granica tablicy jest równa Int32.MinValue(0x80000000) i value nie można jej odnaleźć, ta metoda zwraca Int32.MaxValue (0x7FFFFFFF).In the rare case that the lower bound of the array is equal to Int32.MinValue(0x80000000) and value isn't found, this method returns Int32.MaxValue (0x7FFFFFFF).

Jeśli startIndex jest Array.Lengthrówne, metoda zwraca wartość-1.If startIndex equals Array.Length,the method returns -1. Jeśli startIndex jest większa niż Array.Length ArgumentOutOfRangeException, metoda zgłasza.If startIndex is greater than Array.Length, the method throws an ArgumentOutOfRangeException.

Ta metoda jest operacją on(), gdzie n jest liczbą elementów arrayod startIndex do końca.This method is an O(n) operation, where n is the number of elements from startIndex to the end of array.

Zobacz też

IndexOf(Array, Object, Int32, Int32) IndexOf(Array, Object, Int32, Int32) IndexOf(Array, Object, Int32, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia IFS.Searches for the specified object in a range of elements of a one-dimensional array, and returns the index of ifs first occurrence. Zakres rozciąga się od określonego indeksu dla określonej liczby elementów.The range extends from a specified index for a specified number of elements.

public:
 static int IndexOf(Array ^ array, System::Object ^ value, int startIndex, int count);
public static int IndexOf (Array array, object value, int startIndex, int count);
static member IndexOf : Array * obj * int * int -> int

Parametry

array
Array Array Array Array

Tablica Jednowymiarowa do przeszukania.The one-dimensional array to search.

value
Object Object Object Object

Obiekt, w arrayktórym ma zostać zlokalizowany.The object to locate in array.

startIndex
Int32 Int32 Int32 Int32

Początkowy indeks wyszukiwania.The starting index of the search. 0 (zero) jest prawidłową wartością w pustej tablicy.0 (zero) is valid in an empty array.

count
Int32 Int32 Int32 Int32

Liczba elementów do wyszukania.The number of elements to search.

Zwraca

Indeks valuepierwszego wystąpienia, jeśli znajduje się on array w indeksie startIndex od do startIndex + count -1; w przeciwnym razie Dolna granica tablicy minus 1.The index of the first occurrence of value, if it's found in the array from index startIndex to startIndex + count - 1; otherwise, the lower bound of the array minus 1.

Wyjątki

startIndexznajduje się poza zakresem prawidłowych indeksów arraydla.startIndex is outside the range of valid indexes for array.

—lub—-or- countjest mniejsza od zera.count is less than zero.

—lub—-or- startIndexi count nie określaj prawidłowej sekcji w array.startIndex and count do not specify a valid section in array.

arrayjest wielowymiarowych.array is multidimensional.

Przykłady

Przykład wywołuje następujące trzy przeciążenia IndexOf metody, aby znaleźć indeks ciągu w tablicy ciągów:The example calls the following three overloads of the IndexOf method to find the index of a string in a string array:

  • IndexOf(Array, Object), aby określić pierwsze wystąpienie ciągu "The" w tablicy ciągów.IndexOf(Array, Object), to determine the first occurrence of the string "the" in a string array.

  • IndexOf(Array, Object, Int32), aby określić pierwsze wystąpienie ciągu "a" w czwarty do ostatniego elementu tablicy ciągów.IndexOf(Array, Object, Int32), to determine the first occurrence of the string "the" in the fourth to the last elements of a string array.

  • IndexOf(Array, Object, Int32, Int32), aby określić pierwsze wystąpienie ciągu "The" w tablicy ciągów od elementu, który następuje po ostatnim pomyślnym dopasowaniu do końca tablicy.IndexOf(Array, Object, Int32, Int32), to determine the first occurrence of the string "the" in a string array from the element that follows the last successful match to the end of the array. Aby określić wartość count argumentu, odejmuje górną granicę tablicy od początkowego indeksu i dodaje jeden.To determine the value of the count argument, it subtracts the upper bound of the array from the starting index and adds one.

using namespace System;

void main()
{
   // Create a string array with 3 elements having the same value.
   array<String^>^ strings = { "the", "quick", "brown", "fox",
                               "jumps", "over", "the", "lazy", "dog",
                               "in", "the", "barn" };

   // Display the elements of the array.
   Console::WriteLine("The array contains the following values:");
   for (int i = strings->GetLowerBound(0); i <= strings->GetUpperBound(0); i++)
      Console::WriteLine("   [{0,2}]: {1}", i, strings[i]);
      
   // Search for the first occurrence of the duplicated value.
   String^ searchString =  "the";
   int index = Array::IndexOf(strings, searchString);
   Console::WriteLine("The first occurrence of \"{0}\" is at index {1}.",
                      searchString, index);

   // Search for the first occurrence of the duplicated value in the last section of the array.
   index = Array::IndexOf( strings, searchString, 4);
   Console::WriteLine("The first occurrence of \"{0}\" between index 4 and the end is at index {1}.",
                      searchString, index);

   // Search for the first occurrence of the duplicated value in a section of the array.
   int position = index + 1;
   index = Array::IndexOf(strings, searchString, position, strings->GetUpperBound(0) - position + 1);
   Console::WriteLine("The first occurrence of \"{0}\" between index {1} and index {2} is at index {3}.",
                      searchString, position, strings->GetUpperBound(0), index);
}
// The example displays the following output:
//    The array contains the following values:
//       [ 0]: the
//       [ 1]: quick
//       [ 2]: brown
//       [ 3]: fox
//       [ 4]: jumps
//       [ 5]: over
//       [ 6]: the
//       [ 7]: lazy
//       [ 8]: dog
//       [ 9]: in
//       [10]: the
//       [11]: barn
//    The first occurrence of "the" is at index 0.
//    The first occurrence of "the" between index 4 and the end is at index 6.
//    The first occurrence of "the" between index 7 and index 11 is at index 10.
using System;

public class Example
{
    public static void Main()
    {
       // Create a string array with 3 elements having the same value.
       String[] strings = { "the", "quick", "brown", "fox", "jumps",
                            "over", "the", "lazy", "dog", "in", "the",
                            "barn" };

       // Display the elements of the array.
       Console.WriteLine("The array contains the following values:");
       for (int i = strings.GetLowerBound(0); i <= strings.GetUpperBound(0); i++)
          Console.WriteLine("   [{0,2}]: {1}", i, strings[i]);

       // Search for the first occurrence of the duplicated value.
       String searchString = "the";
       int index = Array.IndexOf(strings, searchString);
       Console.WriteLine("The first occurrence of \"{0}\" is at index {1}.",
                         searchString, index);
 
       // Search for the first occurrence of the duplicated value in the last section of the array.
       index = Array.IndexOf(strings, searchString, 4);
       Console.WriteLine("The first occurrence of \"{0}\" between index 4 and the end is at index {1}.",
                         searchString, index);
 
       // Search for the first occurrence of the duplicated value in a section of the array.
       int position = index + 1;
       index = Array.IndexOf(strings, searchString, position, strings.GetUpperBound(0) - position + 1);
       Console.WriteLine("The first occurrence of \"{0}\" between index {1} and index {2} is at index {3}.",
                         searchString, position, strings.GetUpperBound(0), index);
    }
 }
// The example displays the following output:
//    The array contains the following values:
//       [ 0]: the
//       [ 1]: quick
//       [ 2]: brown
//       [ 3]: fox
//       [ 4]: jumps
//       [ 5]: over
//       [ 6]: the
//       [ 7]: lazy
//       [ 8]: dog
//       [ 9]: in
//       [10]: the
//       [11]: barn
//    The first occurrence of "the" is at index 0.
//    The first occurrence of "the" between index 4 and the end is at index 6.
//    The first occurrence of "the" between index 7 and index 11 is at index 10.
Public Module Example
   Public Sub Main()
      ' Create a string array with 3 elements having the same value.
      Dim strings() As String = { "the", "quick", "brown", "fox",
                                  "jumps", "over", "the", "lazy",
                                  "dog", "in", "the", "barn" }

      ' Display the values of the array.
      Console.WriteLine("The array contains the following values:")
      For i As Integer = strings.GetLowerBound(0) To strings.GetUpperBound(0)
         Console.WriteLine("   [{0,2}]: {1}", i, strings(i))
      Next

      ' Search for the first occurrence of the duplicated value.
      Dim searchString As String = "the"
      Dim index As Integer = Array.IndexOf(strings, searchString)
      Console.WriteLine("The first occurrence of ""{0}"" is at index {1}.",
                        searchString, index)
        
      ' Search for the first occurrence of the duplicated value in the last section of the array.
      index = Array.IndexOf(strings, searchString, 4)
      Console.WriteLine("The first occurrence of ""{0}"" between index 4 and the end is at index {1}.",
                        searchString, index)
        
      ' Search for the first occurrence of the duplicated value in a section of the array.
       Dim position As Integer = index + 1
       index = Array.IndexOf(strings, searchString, position, strings.GetUpperBound(0) - position + 1)
       Console.WriteLine("The first occurrence of ""{0}"" between index {1} and index {2} is at index {3}.",
                         searchString, position, strings.GetUpperBound(0), index)
    End Sub
End Module
' The example displays the following output:
'    The array contains the following values:
'       [ 0]: the
'       [ 1]: quick
'       [ 2]: brown
'       [ 3]: fox
'       [ 4]: jumps
'       [ 5]: over
'       [ 6]: the
'       [ 7]: lazy
'       [ 8]: dog
'       [ 9]: in
'       [10]: the
'       [11]: barn
'    The first occurrence of "the" is at index 0.
'    The first occurrence of "the" between index 4 and the end is at index 6.
'    The first occurrence of "the" between index 7 and index 11 is at index 10.

Uwagi

Ta metoda przeszukuje elementy jednowymiarowej tablicy startIndex z do startIndex Plus count minus 1, jeśli count jest większa niż 0.This method searches the elements of a one-dimensional array from startIndex to startIndex plus count minus 1, if count is greater than 0. Aby określić, value czy istnieje arrayw, Metoda wykonuje porównanie Equals równości przez wywołanie metody każdego elementu do momentu znalezienia dopasowania.To determine whether value exists in array, the method performs an equality comparison by calling the Equals method of every element until it finds a match. Oznacza to, że jeśli element przesłania Object.Equals metodę, to zastępowanie jest wywoływane.This means that if the element overrides the Object.Equals method, that override is called.

Ponieważ większość tablic ma dolną granicę równą zero, ta metoda zwykle zwraca wartość value -1, gdy nie znaleziono.Because most arrays have a lower bound of zero, this method generally returns -1 when value isn't found. W rzadkich przypadkach Dolna granica tablicy jest równa Int32.MinValue (0x80000000) i value nie można jej odnaleźć, ta metoda zwraca Int32.MaxValue (0x7FFFFFFF).In the rare case that the lower bound of the array is equal to Int32.MinValue (0x80000000) and value isn't found, this method returns Int32.MaxValue (0x7FFFFFFF).

Jeśli startindex jest Array.Lengthrówne, metoda zwraca wartość-1.If startindex equals Array.Length, the method returns -1. Jeśli startIndex jest większa niż Array.Length ArgumentOutOfRangeException, metoda zgłasza.If startIndex is greater than Array.Length, the method throws an ArgumentOutOfRangeException.

Ta metoda jest operacją on(), gdzie n is count.This method is an O(n) operation, where n is count.

Zobacz też

IndexOf<T>(T[], T, Int32, Int32) IndexOf<T>(T[], T, Int32, Int32) IndexOf<T>(T[], T, Int32, Int32) IndexOf<T>(T[], T, Int32, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia.Searches for the specified object in a range of elements of a one-dimensional array, and returns the index of its first occurrence. Zakres rozciąga się od określonego indeksu dla określonej liczby elementów.The range extends from a specified index for a specified number of elements.

public:
generic <typename T>
 static int IndexOf(cli::array <T> ^ array, T value, int startIndex, int count);
public static int IndexOf<T> (T[] array, T value, int startIndex, int count);
static member IndexOf : 'T[] * 'T * int * int -> int
Public Shared Function IndexOf(Of T) (array As T(), value As T, startIndex As Integer, count As Integer) As Integer

Parametry typu

T

Typ elementów tablicy.The type of the elements of the array.

Parametry

array
T[]

Tablica Jednowymiarowa, która ma być wyszukiwana.The one-dimensional, zero-based array to search.

value
T T T T

Obiekt, w arrayktórym ma zostać zlokalizowany.The object to locate in array.

startIndex
Int32 Int32 Int32 Int32

Wartość początkowa indeksu zaczynającego się od zera dla wyszukiwania.The zero-based starting index of the search. 0 (zero) jest prawidłową wartością w pustej tablicy.0 (zero) is valid in an empty array.

count
Int32 Int32 Int32 Int32

Liczba elementów w sekcji do wyszukania.The number of elements in the section to search.

Zwraca

Indeks (liczony od zera value ) pierwszego wystąpienia elementu w array zakresie, który zaczyna się startIndex od i zawiera liczbę elementów określonych w count, jeśli znaleziono; w przeciwnym razie,-1.The zero-based index of the first occurrence of value within the range of elements in array that starts at startIndex and contains the number of elements specified in count, if found; otherwise, -1.

Wyjątki

startIndexznajduje się poza zakresem prawidłowych indeksów arraydla.startIndex is outside the range of valid indexes for array.

—lub—-or- countjest mniejsza od zera.count is less than zero.

—lub—-or- startIndexi count nie określaj prawidłowej sekcji w array.startIndex and count do not specify a valid section in array.

Przykłady

Poniższy przykład ilustruje wszystkie trzy ogólne przeciążenia IndexOf metody.The following example demonstrates all three generic overloads of the IndexOf method. Tablica ciągów jest tworzona, gdy jeden wpis, to pojawia się dwukrotnie, z lokalizacją indeksu 0 i lokalizacją indeksu 5.An array of strings is created, with one entry that appears twice, at index location 0 and index location 5. Przeciążenie IndexOf<T>(T[], T) metody przeszukuje tablicę od początku i odnajduje pierwsze wystąpienie ciągu.The IndexOf<T>(T[], T) method overload searches the array from the beginning, and finds the first occurrence of the string. Przeciążenie IndexOf<T>(T[], T, Int32) metody jest używane do przeszukiwania tablicy zaczynającej się od lokalizacji indeksu 3 i kontynuowania na końcu tablicy i znajduje drugie wystąpienie ciągu.The IndexOf<T>(T[], T, Int32) method overload is used to search the array beginning with index location 3 and continuing to the end of the array, and finds the second occurrence of the string. Na koniec Przeciążenie metody służy do przeszukiwania zakresu dwóch wpisów, zaczynając od lokalizacji indeksu dwa; zwraca wartość-1, ponieważ w tym zakresie nie ma wystąpień ciągu wyszukiwania. IndexOf<T>(T[], T, Int32, Int32)Finally, the IndexOf<T>(T[], T, Int32, Int32) method overload is used to search a range of two entries, beginning at index location two; it returns -1 because there are no instances of the search string in that range.

using namespace System;

void main()
{
    array<String^>^ dinosaurs = { "Tyrannosaurus", 
        "Amargasaurus",
        "Mamenchisaurus",
        "Brachiosaurus",
        "Deinonychus",
        "Tyrannosaurus",
        "Compsognathus" };

    Console::WriteLine();
    for each(String^ dinosaur in dinosaurs )
    {
        Console::WriteLine(dinosaur);
    }

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\"): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus"));

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 3): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus", 3));

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 2, 2): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus", 2, 2));
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0

Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5

Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1
 */
using System;

public class Example
{
    public static void Main()
    {
        string[] dinosaurs = { "Tyrannosaurus",
            "Amargasaurus",
            "Mamenchisaurus",
            "Brachiosaurus",
            "Deinonychus",
            "Tyrannosaurus",
            "Compsognathus" };

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\"): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus"));

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 3): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 3));

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 2, 2): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2));
    }
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0

Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5

Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1
 */
Public Class Example

    Public Shared Sub Main()

        Dim dinosaurs() As String = { "Tyrannosaurus", _
            "Amargasaurus", _
            "Mamenchisaurus", _
            "Brachiosaurus", _
            "Deinonychus", _
            "Tyrannosaurus", _
            "Compsognathus" }

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus""): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus"))

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus"", 3): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 3))

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus"", 2, 2): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2))

    End Sub
End Class

' This code example produces the following output:
'
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Deinonychus
'Tyrannosaurus
'Compsognathus
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1

Uwagi

Ta metoda przeszukuje elementy jednowymiarowej tablicy startIndex z do startIndex Plus count minus 1, jeśli count jest większa niż 0.This method searches the elements of a one-dimensional array from startIndex to startIndex plus count minus 1, if count is greater than 0. Aby określić, value czy istnieje arrayw, Metoda wykonuje porównanie T.Equals równości przez wywołanie metody dla każdego elementu.To determine whether value exists in array, the method performs an equality comparison by calling the T.Equals method on every element. Oznacza to, że T Jeśli Equals przesłania metodę, to zastępowanie jest wywoływane.This means that if T overrides the Equals method, that override is called.

Jeśli startIndex jest Array.Lengthrówne, metoda zwraca wartość-1.If startIndex equals Array.Length, the method returns -1. Jeśli startIndex jest większa niż Array.Length ArgumentOutOfRangeException, metoda zgłasza.If startIndex is greater than Array.Length, the method throws an ArgumentOutOfRangeException.

Ta metoda jest operacją on(), gdzie n is count.This method is an O(n) operation, where n is count.

Zobacz też

IndexOf<T>(T[], T) IndexOf<T>(T[], T) IndexOf<T>(T[], T) IndexOf<T>(T[], T)

Wyszukuje określony obiekt i zwraca indeks jego pierwszego wystąpienia w tablicy jednowymiarowej.Searches for the specified object and returns the index of its first occurrence in a one-dimensional array.

public:
generic <typename T>
 static int IndexOf(cli::array <T> ^ array, T value);
public static int IndexOf<T> (T[] array, T value);
static member IndexOf : 'T[] * 'T -> int
Public Shared Function IndexOf(Of T) (array As T(), value As T) As Integer

Parametry typu

T

Typ elementów tablicy.The type of the elements of the array.

Parametry

array
T[]

Tablica Jednowymiarowa, która ma być wyszukiwana.The one-dimensional, zero-based array to search.

value
T T T T

Obiekt, w arrayktórym ma zostać zlokalizowany.The object to locate in array.

Zwraca

Indeks (liczony od zera) pierwszego wystąpienia value w całości array, jeśli został znaleziony; w przeciwnym razie-1.The zero-based index of the first occurrence of value in the entire array, if found; otherwise, -1.

Wyjątki

Przykłady

Poniższy przykład ilustruje wszystkie trzy ogólne przeciążenia IndexOf metody.The following example demonstrates all three generic overloads of the IndexOf method. Tablica ciągów jest tworzona, gdy jeden wpis, to pojawia się dwukrotnie, z lokalizacją indeksu 0 i lokalizacją indeksu 5.An array of strings is created, with one entry that appears twice, at index location 0 and index location 5. Przeciążenie IndexOf<T>(T[], T) metody przeszukuje tablicę od początku i odnajduje pierwsze wystąpienie ciągu.The IndexOf<T>(T[], T) method overload searches the array from the beginning, and finds the first occurrence of the string. Przeciążenie IndexOf<T>(T[], T, Int32) metody jest używane do przeszukiwania tablicy zaczynającej się od lokalizacji indeksu 3 i kontynuowania na końcu tablicy i znajduje drugie wystąpienie ciągu.The IndexOf<T>(T[], T, Int32) method overload is used to search the array beginning with index location 3 and continuing to the end of the array, and finds the second occurrence of the string. Na koniec Przeciążenie metody służy do przeszukiwania zakresu dwóch wpisów, zaczynając od lokalizacji indeksu dwa; zwraca wartość-1, ponieważ w tym zakresie nie ma wystąpień ciągu wyszukiwania. IndexOf<T>(T[], T, Int32, Int32)Finally, the IndexOf<T>(T[], T, Int32, Int32) method overload is used to search a range of two entries, beginning at index location two; it returns -1 because there are no instances of the search string in that range.

using namespace System;

void main()
{
    array<String^>^ dinosaurs = { "Tyrannosaurus", 
        "Amargasaurus",
        "Mamenchisaurus",
        "Brachiosaurus",
        "Deinonychus",
        "Tyrannosaurus",
        "Compsognathus" };

    Console::WriteLine();
    for each(String^ dinosaur in dinosaurs )
    {
        Console::WriteLine(dinosaur);
    }

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\"): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus"));

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 3): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus", 3));

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 2, 2): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus", 2, 2));
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0

Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5

Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1
 */
using System;

public class Example
{
    public static void Main()
    {
        string[] dinosaurs = { "Tyrannosaurus",
            "Amargasaurus",
            "Mamenchisaurus",
            "Brachiosaurus",
            "Deinonychus",
            "Tyrannosaurus",
            "Compsognathus" };

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\"): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus"));

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 3): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 3));

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 2, 2): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2));
    }
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0

Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5

Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1
 */
Public Class Example

    Public Shared Sub Main()

        Dim dinosaurs() As String = { "Tyrannosaurus", _
            "Amargasaurus", _
            "Mamenchisaurus", _
            "Brachiosaurus", _
            "Deinonychus", _
            "Tyrannosaurus", _
            "Compsognathus" }

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus""): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus"))

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus"", 3): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 3))

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus"", 2, 2): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2))

    End Sub
End Class

' This code example produces the following output:
'
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Deinonychus
'Tyrannosaurus
'Compsognathus
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1

Uwagi

Ta metoda przeszukuje wszystkie elementy tablicy jednowymiarowej dla value.This method searches all the elements of a one-dimensional array for value. Aby określić, value czy istnieje arrayw, Metoda wykonuje porównanie T.Equals równości przez wywołanie metody dla każdego elementu.To determine whether value exists in array, the method performs an equality comparison by calling the T.Equals method on every element. Oznacza to, że T Jeśli Equals przesłania metodę, to zastępowanie jest wywoływane.This means that if T overrides the Equals method, that override is called.

Ta metoda jest operacją on(), gdzie n jest Length z array.This method is an O(n) operation, where n is the Length of array.

Zobacz też

IndexOf<T>(T[], T, Int32) IndexOf<T>(T[], T, Int32) IndexOf<T>(T[], T, Int32) IndexOf<T>(T[], T, Int32)

Wyszukuje określony obiekt w zakresie elementów tablicy jednowymiarowej i zwraca indeks pierwszego wystąpienia.Searches for the specified object in a range of elements of a one dimensional array, and returns the index of its first occurrence. Zakres rozciąga się od określonego indeksu do końca tablicy.The range extends from a specified index to the end of the array.

public:
generic <typename T>
 static int IndexOf(cli::array <T> ^ array, T value, int startIndex);
public static int IndexOf<T> (T[] array, T value, int startIndex);
static member IndexOf : 'T[] * 'T * int -> int
Public Shared Function IndexOf(Of T) (array As T(), value As T, startIndex As Integer) As Integer

Parametry typu

T

Typ elementów tablicy.The type of the elements of the array.

Parametry

array
T[]

Tablica Jednowymiarowa, która ma być wyszukiwana.The one-dimensional, zero-based array to search.

value
T T T T

Obiekt, w arrayktórym ma zostać zlokalizowany.The object to locate in array.

startIndex
Int32 Int32 Int32 Int32

Wartość początkowa indeksu zaczynającego się od zera dla wyszukiwania.The zero-based starting index of the search. 0 (zero) jest prawidłową wartością w pustej tablicy.0 (zero) is valid in an empty array.

Zwraca

Indeks (liczony od zera) pierwszego wystąpienia value w zakresie elementów w programie array , który rozciąga się od startIndex do ostatniego elementu, jeśli został znaleziony; w przeciwnym razie-1.The zero-based index of the first occurrence of value within the range of elements in array that extends from startIndex to the last element, if found; otherwise, -1.

Wyjątki

startIndexznajduje się poza zakresem prawidłowych indeksów arraydla.startIndex is outside the range of valid indexes for array.

Przykłady

Poniższy przykład ilustruje wszystkie trzy ogólne przeciążenia IndexOf metody.The following example demonstrates all three generic overloads of the IndexOf method. Tablica ciągów jest tworzona, gdy jeden wpis, to pojawia się dwukrotnie, z lokalizacją indeksu 0 i lokalizacją indeksu 5.An array of strings is created, with one entry that appears twice, at index location 0 and index location 5. Przeciążenie IndexOf<T>(T[], T) metody przeszukuje tablicę od początku i odnajduje pierwsze wystąpienie ciągu.The IndexOf<T>(T[], T) method overload searches the array from the beginning, and finds the first occurrence of the string. Przeciążenie IndexOf<T>(T[], T, Int32) metody jest używane do przeszukiwania tablicy zaczynającej się od lokalizacji indeksu 3 i kontynuowania na końcu tablicy i znajduje drugie wystąpienie ciągu.The IndexOf<T>(T[], T, Int32) method overload is used to search the array beginning with index location 3 and continuing to the end of the array, and finds the second occurrence of the string. Na koniec Przeciążenie metody służy do przeszukiwania zakresu dwóch wpisów, zaczynając od lokalizacji indeksu dwa; zwraca wartość-1, ponieważ w tym zakresie nie ma wystąpień ciągu wyszukiwania. IndexOf<T>(T[], T, Int32, Int32)Finally, the IndexOf<T>(T[], T, Int32, Int32) method overload is used to search a range of two entries, beginning at index location two; it returns -1 because there are no instances of the search string in that range.

using namespace System;

void main()
{
    array<String^>^ dinosaurs = { "Tyrannosaurus", 
        "Amargasaurus",
        "Mamenchisaurus",
        "Brachiosaurus",
        "Deinonychus",
        "Tyrannosaurus",
        "Compsognathus" };

    Console::WriteLine();
    for each(String^ dinosaur in dinosaurs )
    {
        Console::WriteLine(dinosaur);
    }

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\"): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus"));

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 3): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus", 3));

    Console::WriteLine("\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 2, 2): {0}", 
        Array::IndexOf(dinosaurs, "Tyrannosaurus", 2, 2));
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0

Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5

Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1
 */
using System;

public class Example
{
    public static void Main()
    {
        string[] dinosaurs = { "Tyrannosaurus",
            "Amargasaurus",
            "Mamenchisaurus",
            "Brachiosaurus",
            "Deinonychus",
            "Tyrannosaurus",
            "Compsognathus" };

        Console.WriteLine();
        foreach(string dinosaur in dinosaurs)
        {
            Console.WriteLine(dinosaur);
        }

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\"): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus"));

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 3): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 3));

        Console.WriteLine(
            "\nArray.IndexOf(dinosaurs, \"Tyrannosaurus\", 2, 2): {0}", 
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2));
    }
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0

Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5

Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1
 */
Public Class Example

    Public Shared Sub Main()

        Dim dinosaurs() As String = { "Tyrannosaurus", _
            "Amargasaurus", _
            "Mamenchisaurus", _
            "Brachiosaurus", _
            "Deinonychus", _
            "Tyrannosaurus", _
            "Compsognathus" }

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus""): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus"))

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus"", 3): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 3))

        Console.WriteLine(vbLf & _
            "Array.IndexOf(dinosaurs, ""Tyrannosaurus"", 2, 2): {0}", _
            Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2))

    End Sub
End Class

' This code example produces the following output:
'
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Deinonychus
'Tyrannosaurus
'Compsognathus
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus"): 0
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus", 3): 5
'
'Array.IndexOf(dinosaurs, "Tyrannosaurus", 2, 2): -1

Uwagi

Ta metoda przeszukuje tablicę jednowymiarową z elementu na startIndex końcu tablicy.This method searches a one-dimensional array from the element at startIndex to the end of the array. Aby określić, value czy istnieje arrayw, Metoda wykonuje porównanie T.Equals równości przez wywołanie metody dla każdego elementu.To determine whether value exists in array, the method performs an equality comparison by calling the T.Equals method on every element. Oznacza to, że T Jeśli Equals przesłania metodę, to zastępowanie jest wywoływane.This means that if T overrides the Equals method, that override is called.

Jeśli startIndex jest Lengthrówne, metoda zwraca -1. Jeśli startIndex ArgumentOutOfRangeExceptionjest większa niż Array.Length, metoda zgłasza.If startIndex equals Length,the method returns -1.If startIndex is greater than Array.Length, the method throws an ArgumentOutOfRangeException.

Ta metoda jest operacją on(), gdzie n jest liczbą elementów arrayod startIndex do końca.This method is an O(n) operation, where n is the number of elements from startIndex to the end of array.

Zobacz też

Dotyczy