Export (0) Print
Expand All

LinkedList<T>.AddBefore Method (LinkedListNode<T>, LinkedListNode<T>)

Adds the specified new node before the specified existing node in the LinkedList<T>.

Namespace:  System.Collections.Generic
Assembly:  System (in System.dll)

public void AddBefore(
	LinkedListNode<T> node,
	LinkedListNode<T> newNode
)

Parameters

node
Type: System.Collections.Generic.LinkedListNode<T>
The LinkedListNode<T> before which to insert newNode.
newNode
Type: System.Collections.Generic.LinkedListNode<T>
The new LinkedListNode<T> to add to the LinkedList<T>.

ExceptionCondition
ArgumentNullException

node is null.

-or-

newNode is null.

InvalidOperationException

node is not in the current LinkedList<T>.

-or-

newNode belongs to another LinkedList<T>.

LinkedList<T> accepts null as a valid Value for reference types and allows duplicate values.

This method is an O(1) operation.

The following code example and output demonstrate the AddBefore method. The code example begins by marking the existing node containing "fox". The code then finds the node containing "dog" and attempts to use the AddBefore(LinkedListNode<T>, LinkedListNode<T>) method overload to add "fox" before "dog", without first removing "fox" from the list. This causes an InvalidOperationException, which is caught. The code example then removes "fox" and uses the AddBefore(LinkedListNode<T>, LinkedListNode<T>) method overload to add it before "dog". Finally, the code example removes "dog" and inserts it at the location formerly occupied by "fox".

This code and output are part of a larger example provided for the LinkedList<T> class.


// Remove the node referred to by mark1, and then add it
// before the node referred to by current.
// Indicate the node referred to by current.
sentence.Remove(mark1);
sentence.AddBefore(current, mark1);


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

ADD
Show:
© 2015 Microsoft