SortedList.GetByIndex(Int32) Metodo

Definizione

Ottiene il valore in corrispondenza dell'indice specificato di un oggetto SortedList.

public:
 virtual System::Object ^ GetByIndex(int index);
public virtual object GetByIndex (int index);
public virtual object? GetByIndex (int index);
abstract member GetByIndex : int -> obj
override this.GetByIndex : int -> obj
Public Overridable Function GetByIndex (index As Integer) As Object

Parametri

index
Int32

Indice in base zero del valore da ottenere.

Restituisce

Object

Valore in corrispondenza dell'indice specificato dell'oggetto SortedList.

Eccezioni

Il parametro index non rientra nell'intervallo di indici validi per l'oggetto SortedList.

Esempio

Nell'esempio di codice seguente viene illustrato come ottenere una o tutte le chiavi o i valori in un SortedList oggetto.

#using <system.dll>

using namespace System;
using namespace System::Collections;
int main()
{
   
   // Creates and initializes a new SortedList.
   SortedList^ mySL = gcnew SortedList;
   mySL->Add( 1.3, "fox" );
   mySL->Add( 1.4, "jumps" );
   mySL->Add( 1.5, "over" );
   mySL->Add( 1.2, "brown" );
   mySL->Add( 1.1, "quick" );
   mySL->Add( 1.0, "The" );
   mySL->Add( 1.6, "the" );
   mySL->Add( 1.8, "dog" );
   mySL->Add( 1.7, "lazy" );
   
   // Gets the key and the value based on the index.
   int myIndex = 3;
   Console::WriteLine( "The key   at index {0} is {1}.", myIndex, mySL->GetKey( myIndex ) );
   Console::WriteLine( "The value at index {0} is {1}.", myIndex, mySL->GetByIndex( myIndex ) );
   
   // Gets the list of keys and the list of values.
   IList^ myKeyList = mySL->GetKeyList();
   IList^ myValueList = mySL->GetValueList();
   
   // Prints the keys in the first column and the values in the second column.
   Console::WriteLine( "\t-KEY-\t-VALUE-" );
   for ( int i = 0; i < mySL->Count; i++ )
      Console::WriteLine( "\t{0}\t{1}", myKeyList[ i ], myValueList[ i ] );
}

/*
This code produces the following output.

The key   at index 3 is 1.3.
The value at index 3 is fox.
        -KEY-   -VALUE-
        1       The
        1.1     quick
        1.2     brown
        1.3     fox
        1.4     jumps
        1.5     over
        1.6     the
        1.7     lazy
        1.8     dog
*/
using System;
using System.Collections;
public class SamplesSortedList  {

   public static void Main()  {

      // Creates and initializes a new SortedList.
      SortedList mySL = new SortedList();
      mySL.Add( 1.3, "fox" );
      mySL.Add( 1.4, "jumps" );
      mySL.Add( 1.5, "over" );
      mySL.Add( 1.2, "brown" );
      mySL.Add( 1.1, "quick" );
      mySL.Add( 1.0, "The" );
      mySL.Add( 1.6, "the" );
      mySL.Add( 1.8, "dog" );
      mySL.Add( 1.7, "lazy" );

      // Gets the key and the value based on the index.
      int myIndex=3;
      Console.WriteLine( "The key   at index {0} is {1}.", myIndex, mySL.GetKey( myIndex ) );
      Console.WriteLine( "The value at index {0} is {1}.", myIndex, mySL.GetByIndex( myIndex ) );

      // Gets the list of keys and the list of values.
      IList myKeyList = mySL.GetKeyList();
      IList myValueList = mySL.GetValueList();

      // Prints the keys in the first column and the values in the second column.
      Console.WriteLine( "\t-KEY-\t-VALUE-" );
      for ( int i = 0; i < mySL.Count; i++ )
         Console.WriteLine( "\t{0}\t{1}", myKeyList[i], myValueList[i] );
   }
}
/*
This code produces the following output.

The key   at index 3 is 1.3.
The value at index 3 is fox.
    -KEY-    -VALUE-
    1    The
    1.1    quick
    1.2    brown
    1.3    fox
    1.4    jumps
    1.5    over
    1.6    the
    1.7    lazy
    1.8    dog
*/
Imports System.Collections

Public Class SamplesSortedList
        
    Public Shared Sub Main()
        
        ' Creates and initializes a new SortedList.
        Dim mySL As New SortedList()
        mySL.Add(1.3, "fox")
        mySL.Add(1.4, "jumps")
        mySL.Add(1.5, "over")
        mySL.Add(1.2, "brown")
        mySL.Add(1.1, "quick")
        mySL.Add(1.0, "The")
        mySL.Add(1.6, "the")
        mySL.Add(1.8, "dog")
        mySL.Add(1.7, "lazy")
        
        ' Gets the key and the value based on the index.
        Dim myIndex As Integer = 3
        Console.WriteLine("The key   at index {0} is {1}.", myIndex, _
           mySL.GetKey(myIndex))
        Console.WriteLine("The value at index {0} is {1}.", myIndex, _
           mySL.GetByIndex(myIndex))
        
        ' Gets the list of keys and the list of values.
        Dim myKeyList As IList = mySL.GetKeyList()
        Dim myValueList As IList = mySL.GetValueList()
        
        ' Prints the keys in the first column and the values in the second column.
        Console.WriteLine(ControlChars.Tab & "-KEY-" & ControlChars.Tab & _
           "-VALUE-")
        Dim i As Integer
        For i = 0 To mySL.Count - 1
            Console.WriteLine(ControlChars.Tab & "{0}" & ControlChars.Tab & _
               "{1}", myKeyList(i), myValueList(i))
        Next i
    End Sub
End Class

' This code produces the following output.
' 
' The key   at index 3 is 1.3.
' The value at index 3 is fox.
'     -KEY-    -VALUE-
'     1    The
'     1.1    quick
'     1.2    brown
'     1.3    fox
'     1.4    jumps
'     1.5    over
'     1.6    the
'     1.7    lazy
'     1.8    dog

Commenti

La sequenza di indice è basata sulla sequenza di ordinamento. Quando viene aggiunto un elemento, viene inserito nell'ordine di ordinamento corretto e l'indicizzazione viene modificata SortedList di conseguenza. Quando viene rimosso un elemento, l'indicizzazione viene modificata di conseguenza. Pertanto, l'indice di una coppia chiave/valore specifico può cambiare quando gli elementi vengono aggiunti o rimossi dall'oggetto SortedList .

Questo metodo è un'operazione O(1) .

Si applica a

Vedi anche