LinkedListNode<T> Class
Represents a node in a LinkedList<T>. This class cannot be inherited.
Assembly: System (in System.dll)
| Name | Description | |
|---|---|---|
![]() | LinkedListNode<T>(T) | Initializes a new instance of the LinkedListNode<T> class, containing the specified value. |
| Name | Description | |
|---|---|---|
![]() | List | Gets the LinkedList<T> that the LinkedListNode<T> belongs to. |
![]() | Next | Gets the next node in the LinkedList<T>. |
![]() | Previous | Gets the previous node in the LinkedList<T>. |
![]() | Value | Gets the value contained in the node. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
Each element of the LinkedList<T> collection is a LinkedListNode<T>. The LinkedListNode<T> contains a value, a reference to the LinkedList<T> that it belongs to, a reference to the next node, and a reference to the previous node.
The following code example creates a LinkedListNode<T>, adds it to a LinkedList<T>, and tracks the values of its properties as the LinkedList<T> changes.
#using <System.dll> using namespace System; using namespace System::Collections::Generic; public ref class GenericCollection { public: static void Main() { // Create a new LinkedListNode of type String and displays its properties. LinkedListNode<String^>^ lln = gcnew LinkedListNode<String^>( "orange" ); Console::WriteLine( "After creating the node ...." ); DisplayProperties( lln ); // Create a new LinkedList. LinkedList<String^>^ ll = gcnew LinkedList<String^>(); // Add the "orange" node and display its properties. ll->AddLast( lln ); Console::WriteLine( "After adding the node to the empty LinkedList ...." ); DisplayProperties( lln ); // Add nodes before and after the "orange" node and display the "orange" node's properties. ll->AddFirst( "red" ); ll->AddLast( "yellow" ); Console::WriteLine( "After adding red and yellow ...." ); DisplayProperties( lln ); } static void DisplayProperties( LinkedListNode<String^>^ lln ) { if ( lln->List == nullptr ) Console::WriteLine( " Node is not linked." ); else Console::WriteLine( " Node belongs to a linked list with {0} elements.", lln->List->Count ); if ( lln->Previous == nullptr ) Console::WriteLine( " Previous node is null." ); else Console::WriteLine( " Value of previous node: {0}", lln->Previous->Value ); Console::WriteLine( " Value of current node: {0}", lln->Value ); if ( lln->Next == nullptr ) Console::WriteLine( " Next node is null." ); else Console::WriteLine( " Value of next node: {0}", lln->Next->Value ); Console::WriteLine(); } }; int main() { GenericCollection::Main(); } /* This code produces the following output. After creating the node .... Node is not linked. Previous node is null. Value of current node: orange Next node is null. After adding the node to the empty LinkedList .... Node belongs to a linked list with 1 elements. Previous node is null. Value of current node: orange Next node is null. After adding red and yellow .... Node belongs to a linked list with 3 elements. Value of previous node: red Value of current node: orange Value of next node: yellow */
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

