我已经在PowerShell中创建了一个自定义类,希望能够通过foreach
命令进行访问。
在PHP中,可以通过在类声明中使用implements iterator
并实现一些变量和函数来实现此目的。在PowerShell中有类似的东西吗?如何让foreach
访问我的PowerShell类?
注意:我正在使用PowerShell Core
答案 0 :(得分:1)
您可以像这样扩展一些IEnumerable实现:
class Test : System.Collections.Generic.List[PSObject]
{
Test($items)
{
$items -split ';' |% { $this.Add($_) }
}
}
$test = New-Object Test('a;1;x;y;z;2;3;4')
foreach ($item in $test)
{
Write-Host $item
}
结果:
a
1
x
y
z
2
3
4