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; using System.Collections.Generic; public class GenericCollection { public static void Main() { // Create a new LinkedListNode of type String and displays its properties. LinkedListNode<String> lln = new LinkedListNode<String>( "orange" ); Console.WriteLine( "After creating the node ...." ); DisplayProperties( lln ); // Create a new LinkedList. LinkedList<String> ll = new 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 ); } public static void DisplayProperties( LinkedListNode<String> lln ) { if ( lln.List == null ) Console.WriteLine( " Node is not linked." ); else Console.WriteLine( " Node belongs to a linked list with {0} elements.", lln.List.Count ); if ( lln.Previous == null ) 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 == null ) Console.WriteLine( " Next node is null." ); else Console.WriteLine( " Value of next node: {0}", lln.Next.Value ); Console.WriteLine(); } } /* 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.
.jpeg?cs-save-lang=1&cs-lang=csharp)
.jpeg?cs-save-lang=1&cs-lang=csharp)