SortedList.ContainsKey(Object) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Determina si un objeto SortedList contiene una clave específica.
public:
virtual bool ContainsKey(System::Object ^ key);
public virtual bool ContainsKey (object key);
abstract member ContainsKey : obj -> bool
override this.ContainsKey : obj -> bool
Public Overridable Function ContainsKey (key As Object) As Boolean
Parámetros
- key
- Object
Clave que se buscará en el objeto SortedList.
Devoluciones
Es true
si el objeto SortedList contiene un elemento con el parámetro key
especificado; en caso contrario, es false
.
Excepciones
key
es null
.
El comparador produce una excepción.
Ejemplos
En el ejemplo de código siguiente se muestra cómo determinar si un SortedList objeto contiene un elemento específico.
#using <system.dll>
using namespace System;
using namespace System::Collections;
void PrintIndexAndKeysAndValues( SortedList^ myList )
{
Console::WriteLine( "\t-INDEX-\t-KEY-\t-VALUE-" );
for ( int i = 0; i < myList->Count; i++ )
{
Console::WriteLine( "\t[{0}]:\t{1}\t{2}", i, myList->GetKey( i ), myList->GetByIndex( i ) );
}
Console::WriteLine();
}
int main()
{
// Creates and initializes a new SortedList.
SortedList^ mySL = gcnew SortedList;
mySL->Add( 2, "two" );
mySL->Add( 4, "four" );
mySL->Add( 1, "one" );
mySL->Add( 3, "three" );
mySL->Add( (int^)0, "zero" );
// Displays the values of the SortedList.
Console::WriteLine( "The SortedList contains the following values:" );
PrintIndexAndKeysAndValues( mySL );
// Searches for a specific key.
int myKey = 2;
Console::WriteLine( "The key \"{0}\" is {1}.", myKey, mySL->ContainsKey( myKey ) ? (String^)"in the SortedList" : "NOT in the SortedList" );
myKey = 6;
Console::WriteLine( "The key \"{0}\" is {1}.", myKey, mySL->ContainsKey( myKey ) ? (String^)"in the SortedList" : "NOT in the SortedList" );
// Searches for a specific value.
String^ myValue = "three";
Console::WriteLine( "The value \"{0}\" is {1}.", myValue, mySL->ContainsValue( myValue ) ? (String^)"in the SortedList" : "NOT in the SortedList" );
myValue = "nine";
Console::WriteLine( "The value \"{0}\" is {1}.", myValue, mySL->ContainsValue( myValue ) ? (String^)"in the SortedList" : "NOT in the SortedList" );
}
/*
This code produces the following output.
The SortedList contains the following values:
-INDEX- -KEY- -VALUE-
[0]: 0 zero
[1]: 1 one
[2]: 2 two
[3]: 3 three
[4]: 4 four
The key "2" is in the SortedList.
The key "6" is NOT in the SortedList.
The value "three" is in the SortedList.
The value "nine" is NOT in the SortedList.
*/
using System;
using System.Collections;
public class SamplesSortedList {
public static void Main() {
// Creates and initializes a new SortedList.
SortedList mySL = new SortedList();
mySL.Add( 2, "two" );
mySL.Add( 4, "four" );
mySL.Add( 1, "one" );
mySL.Add( 3, "three" );
mySL.Add( 0, "zero" );
// Displays the values of the SortedList.
Console.WriteLine( "The SortedList contains the following values:" );
PrintIndexAndKeysAndValues( mySL );
// Searches for a specific key.
int myKey = 2;
Console.WriteLine( "The key \"{0}\" is {1}.", myKey, mySL.ContainsKey( myKey ) ? "in the SortedList" : "NOT in the SortedList" );
myKey = 6;
Console.WriteLine( "The key \"{0}\" is {1}.", myKey, mySL.ContainsKey( myKey ) ? "in the SortedList" : "NOT in the SortedList" );
// Searches for a specific value.
string myValue = "three";
Console.WriteLine( "The value \"{0}\" is {1}.", myValue, mySL.ContainsValue( myValue ) ? "in the SortedList" : "NOT in the SortedList" );
myValue = "nine";
Console.WriteLine( "The value \"{0}\" is {1}.", myValue, mySL.ContainsValue( myValue ) ? "in the SortedList" : "NOT in the SortedList" );
}
public static void PrintIndexAndKeysAndValues( SortedList myList ) {
Console.WriteLine( "\t-INDEX-\t-KEY-\t-VALUE-" );
for ( int i = 0; i < myList.Count; i++ ) {
Console.WriteLine( "\t[{0}]:\t{1}\t{2}", i, myList.GetKey(i), myList.GetByIndex(i) );
}
Console.WriteLine();
}
}
/*
This code produces the following output.
The SortedList contains the following values:
-INDEX- -KEY- -VALUE-
[0]: 0 zero
[1]: 1 one
[2]: 2 two
[3]: 3 three
[4]: 4 four
The key "2" is in the SortedList.
The key "6" is NOT in the SortedList.
The value "three" is in the SortedList.
The value "nine" is NOT in the SortedList.
*/
Imports System.Collections
Public Class SamplesSortedList
Public Shared Sub Main()
' Creates and initializes a new SortedList.
Dim mySL As New SortedList()
mySL.Add(2, "two")
mySL.Add(4, "four")
mySL.Add(1, "one")
mySL.Add(3, "three")
mySL.Add(0, "zero")
' Displays the values of the SortedList.
Console.WriteLine("The SortedList contains the following values:")
PrintIndexAndKeysAndValues(mySL)
' Searches for a specific key.
Dim myKey As Integer = 2
Dim msg As String
If mySL.ContainsKey(myKey) Then
msg = "in the SortedList"
Else
msg = "NOT in the SortedList"
End If
Console.WriteLine("The key ""{0}"" is {1}.", myKey, msg)
myKey = 6
If mySL.ContainsKey(myKey) Then
msg = "in the SortedList"
Else
msg = "NOT in the SortedList"
End If
Console.WriteLine("The key ""{0}"" is {1}.", myKey, msg)
' Searches for a specific value.
Dim myValue As String = "three"
If mySL.ContainsValue(myValue) Then
msg = "in the SortedList"
Else
msg = "NOT in the SortedList"
End If
Console.WriteLine("The value ""{0}"" is {1}.", myValue, msg)
myValue = "nine"
If mySL.ContainsValue(myValue) Then
msg = "in the SortedList"
Else
msg = "NOT in the SortedList"
End If
Console.WriteLine("The value ""{0}"" is {1}.", myValue, msg)
End Sub
Public Shared Sub PrintIndexAndKeysAndValues(myList As SortedList)
Console.WriteLine(ControlChars.Tab & "-INDEX-" & ControlChars.Tab & _
"-KEY-" & ControlChars.Tab & "-VALUE-")
Dim i As Integer
For i = 0 To myList.Count - 1
Console.WriteLine(ControlChars.Tab & "[{0}]:" & ControlChars.Tab & _
"{1}" & ControlChars.Tab & "{2}", i, myList.GetKey(i), _
myList.GetByIndex(i))
Next i
Console.WriteLine()
End Sub
End Class
' This code produces the following output.
'
' The SortedList contains the following values:
' -INDEX- -KEY- -VALUE-
' [0]: 0 zero
' [1]: 1 one
' [2]: 2 two
' [3]: 3 three
' [4]: 4 four
'
' The key "2" is in the SortedList.
' The key "6" is NOT in the SortedList.
' The value "three" is in the SortedList.
' The value "nine" is NOT in the SortedList.
Comentarios
Los elementos de un SortedList objeto se ordenan por las claves según una implementación específica especificada IComparer cuando SortedList se crea o según la IComparable implementación proporcionada por las propias claves.
Este método se comporta exactamente como el Contains método .
Este método utiliza un algoritmo de búsqueda binaria; por lo tanto, este método es una O(log n)
operación, donde n
es Count.
A partir de .NET Framework 2.0, este método usa los objetos Equals y CompareTo métodos de la colección en item
para determinar si el elemento existe. En las versiones anteriores de .NET Framework, esta determinación se realizó mediante el uso de los Equals métodos y CompareTo del item
parámetro en los objetos de la colección.