CSharp examples for System.Collections.Generic:ICollection
Gets the next element in the collection or default when no next element can be found.
using System.Text; using System.Linq; using System.Collections.Generic; using System;// w ww. j a v a 2 s.c o m public class Main{ /// <summary> /// Gets the next element in the collection or default when no next element can be found. /// </summary> /// <typeparam name="T">The type of the items.</typeparam> /// <param name="collection">The collection.</param> /// <param name="current">The current item.</param> /// <returns>The next element in the collection or default when no next element can be found.</returns> /// <exception cref="ArgumentNullException">collection must not be <c>null</c>.</exception> /// <exception cref="ArgumentException">The collection does not contain the specified current item.</exception> public static T GetNextElementOrDefault<T>(IEnumerable<T> collection, T current) { if (collection == null) { throw new ArgumentNullException("collection"); } bool found = false; IEnumerator<T> enumerator = collection.GetEnumerator(); while (enumerator.MoveNext()) { if (EqualityComparer<T>.Default.Equals(enumerator.Current, current)) { found = true; break; } } if (!found) { throw new ArgumentException("The collection does not contain the item current."); } if (enumerator.MoveNext()) { return enumerator.Current; } else { return default(T); } } }