Queue.Clear 方法
从 Queue 中移除所有对象。
**命名空间:**System.Collections
**程序集:**mscorlib(在 mscorlib.dll 中)
语法
声明
Public Overridable Sub Clear
用法
Dim instance As Queue
instance.Clear
public virtual void Clear ()
public:
virtual void Clear ()
public void Clear ()
public function Clear ()
备注
Count 被设置为零,并且对来自该集合元素的其他对象的引用也被释放。
容量保持不变。若要重置 Queue 的容量,请调用 TrimToSize。截去空 Queue 会将 Queue 的容量设置为默认容量。
此方法为 O(n) 操作,其中 n 是 Count。
示例
下面的示例说明如何清除 Queue 的值。
Imports System
Imports System.Collections
Imports Microsoft.VisualBasic
Public Class SamplesQueue
Public Shared Sub Main()
' Creates and initializes a new Queue.
Dim myQ As New Queue()
myQ.Enqueue("The")
myQ.Enqueue("quick")
myQ.Enqueue("brown")
myQ.Enqueue("fox")
myQ.Enqueue("jumped")
' Displays the count and values of the Queue.
Console.WriteLine("Initially,")
Console.WriteLine(" Count : {0}", myQ.Count)
Console.Write(" Values:")
PrintValues(myQ)
' Clears the Queue.
myQ.Clear()
' Displays the count and values of the Queue.
Console.WriteLine("After Clear,")
Console.WriteLine(" Count : {0}", myQ.Count)
Console.Write(" Values:")
PrintValues(myQ)
End Sub
Public Shared Sub PrintValues(myQ As Queue)
Dim myObj As [Object]
For Each myObj In myQ
Console.Write(" {0}", myObj)
Next myObj
Console.WriteLine()
End Sub 'PrintValues
End Class 'SamplesQueue
' This code produces the following output.
'
' Initially,
' Count : 5
' Values: The quick brown fox jumped
' After Clear,
' Count : 0
' Values:
using System;
using System.Collections;
public class SamplesQueue {
public static void Main() {
// Creates and initializes a new Queue.
Queue myQ = new Queue();
myQ.Enqueue( "The" );
myQ.Enqueue( "quick" );
myQ.Enqueue( "brown" );
myQ.Enqueue( "fox" );
myQ.Enqueue( "jumped" );
// Displays the count and values of the Queue.
Console.WriteLine( "Initially," );
Console.WriteLine( " Count : {0}", myQ.Count );
Console.Write( " Values:" );
PrintValues( myQ );
// Clears the Queue.
myQ.Clear();
// Displays the count and values of the Queue.
Console.WriteLine( "After Clear," );
Console.WriteLine( " Count : {0}", myQ.Count );
Console.Write( " Values:" );
PrintValues( myQ );
}
public static void PrintValues( Queue myQ ) {
foreach ( Object myObj in myQ ) {
Console.Write( " {0}", myObj );
}
Console.WriteLine();
}
}
/*
This code produces the following output.
Initially,
Count : 5
Values: The quick brown fox jumped
After Clear,
Count : 0
Values:
*/
using namespace System;
using namespace System::Collections;
void PrintValues( Queue^ myQ );
int main()
{
// Creates and initializes a new Queue.
Queue^ myQ = gcnew Queue;
myQ->Enqueue( "The" );
myQ->Enqueue( "quick" );
myQ->Enqueue( "brown" );
myQ->Enqueue( "fox" );
myQ->Enqueue( "jumped" );
// Displays the count and values of the Queue.
Console::WriteLine( "Initially," );
Console::WriteLine( " Count : {0}", myQ->Count );
Console::Write( " Values:" );
PrintValues( myQ );
// Clears the Queue.
myQ->Clear();
// Displays the count and values of the Queue.
Console::WriteLine( "After Clear," );
Console::WriteLine( " Count : {0}", myQ->Count );
Console::Write( " Values:" );
PrintValues( myQ );
}
void PrintValues( Queue^ myQ )
{
IEnumerator^ myEnum = myQ->GetEnumerator();
while ( myEnum->MoveNext() )
{
Object^ myObj = safe_cast<Object^>(myEnum->Current);
Console::Write( " {0}", myObj );
}
Console::WriteLine();
}
/*
This code produces the following output.
Initially,
Count : 5
Values: The quick brown fox jumped
After Clear,
Count : 0
Values:
*/
import System.*;
import System.Collections.*;
public class SamplesQueue
{
public static void main(String[] args)
{
// Creates and initializes a new Queue.
Queue myQ = new Queue();
myQ.Enqueue("The");
myQ.Enqueue("quick");
myQ.Enqueue("brown");
myQ.Enqueue("fox");
myQ.Enqueue("jumped");
// Displays the count and values of the Queue.
Console.WriteLine("Initially,");
Console.WriteLine(" Count : {0}",
System.Convert.ToString( myQ.get_Count()));
Console.Write(" Values:");
PrintValues(myQ);
// Clears the Queue.
myQ.Clear();
// Displays the count and values of the Queue.
Console.WriteLine("After Clear,");
Console.WriteLine(
" Count : {0}",System.Convert.ToString(myQ.get_Count()));
Console.Write(" Values:");
PrintValues(myQ);
} //main
public static void PrintValues(Queue myQ)
{
IEnumerator e = myQ.GetEnumerator();
while (e.MoveNext()) {
Object myObj = e.get_Current();
Console.Write(" {0}", myObj);
}
Console.WriteLine();
} //PrintValues
} //SamplesQueue
/*
This code produces the following output.
Initially,
Count : 5
Values: The quick brown fox jumped
After Clear,
Count : 0
Values:
*/
平台
Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
版本信息
.NET Framework
受以下版本支持:2.0、1.1、1.0
.NET Compact Framework
受以下版本支持:2.0、1.0