Aracılığıyla paylaş


SortedList.ContainsValue(Object) Yöntem

Tanım

Bir nesnenin belirli bir SortedList değer içerip içermediğini belirler.

public:
 virtual bool ContainsValue(System::Object ^ value);
public virtual bool ContainsValue (object value);
public virtual bool ContainsValue (object? value);
abstract member ContainsValue : obj -> bool
override this.ContainsValue : obj -> bool
Public Overridable Function ContainsValue (value As Object) As Boolean

Parametreler

value
Object

Nesnede SortedList bulunacak değer. Değer olabilir null.

Döndürülenler

trueSortedList nesnesi belirtilen valueöğesine sahip bir öğe içeriyorsa; değilse, false.

Örnekler

Aşağıdaki kod örneği, bir nesnenin belirli bir SortedList öğe içerip içermediğinin nasıl belirleneceğini gösterir.

#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.

Açıklamalar

nesnesinin öğelerinin SortedList değerleri, yöntemi kullanılarak belirtilen değerle Equals karşılaştırılır.

Bu yöntem doğrusal bir arama gerçekleştirir; bu nedenle, ortalama yürütme süresi ile Countorantılıdır. Başka bir ifadeyle, bu yöntem bir O(n) işlemdir ve burada n şeklindedir Count.

.NET Framework 2.0'dan başlayarak, bu yöntem öğenin var olup olmadığını belirlemek için koleksiyonun nesnelerini Equals ve CompareTo yöntemlerini item kullanır. .NET Framework önceki sürümlerinde bu belirleme, koleksiyonundaki Equals nesneler üzerinde parametresinin item ve CompareTo yöntemleri kullanılarak yapılmıştır.

Şunlara uygulanır

Ayrıca bkz.