5
Tuve una discusión sobre PHP's InfiniteIterator con un amigo.¿Cuál es el equivalente de InfiniteIterator de PHP en .NET?
¿Hay un equivalente en el mundo de .NET?
Tuve una discusión sobre PHP's InfiniteIterator con un amigo.¿Cuál es el equivalente de InfiniteIterator de PHP en .NET?
¿Hay un equivalente en el mundo de .NET?
no incorporada, pero fácil de escribir:
public static IEnumerable<T> RepeatInfinitely<T>(this IEnumerable<T> sequence)
{
while(true) {
foreach(var item in sequence)
yield return item;
}
}
que sólo puede liar.
public class InfiniteEnumerator: System.Collections.IEnumerator
{
private System.Collections.IEnumerator _m_enumerator;
public InfiniteEnumerator(System.Collections.IEnumerator enumerator)
{
_m_enumerator = enumerator;
}
public object Current
{
get { return _m_enumerator.Current; }
}
public bool MoveNext()
{
if (!_m_enumerator.MoveNext())
{
_m_enumerator.Reset();
return _m_enumerator.MoveNext();
}
else
{
return true;
}
}
public void Reset()
{
_m_enumerator.Reset();
}
}
while (true) {...} :-) –
¿Qué hace? ¿Es eso lo mismo que un ciclo while infinito? – Jack
Esto es lo que primero pensé, pero también pensé que sería demasiado fácil ser cierto. ¿Derecha? –