Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么是PHP';.NET中的无穷运算符是什么?_Php_.net_Equivalent - Fatal编程技术网

什么是PHP';.NET中的无穷运算符是什么?

什么是PHP';.NET中的无穷运算符是什么?,php,.net,equivalent,Php,.net,Equivalent,我和一个朋友讨论了PHP 在.NET世界中有类似的软件吗?不是内置的,但易于编写: public static IEnumerable<T> RepeatInfinitely<T>(this IEnumerable<T> sequence) { while(true) { foreach(var item in sequence) yield return item; } } 公共静态IEnumerable无限重复(此IEnumerable序列

我和一个朋友讨论了PHP


在.NET世界中有类似的软件吗?

不是内置的,但易于编写:

public static IEnumerable<T> RepeatInfinitely<T>(this IEnumerable<T> sequence)
{
 while(true) {
  foreach(var item in sequence)
   yield return item;
 }
}
公共静态IEnumerable无限重复(此IEnumerable序列)
{
while(true){
foreach(序列中的var项目)
收益回报项目;
}
}

你可以自己滚

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循环一样吗?这是我第一次想到的,但我也认为这太容易了。对吗?