比较一个可能为null的数组

时间:2016-08-11 16:28:55

标签: arrays powershell

我有两个变量,当填充时,是数组,但填充它们的进程有时不返回任何内容,并将其中一个/两个留空。我遇到的问题是我对它们运行Compare-Object来查找丢失的对象。如果其中一个数组为null,则compare-object将失败并显示错误:

  

Compare-Object:无法将参数绑定到参数'ReferenceObject',因为它为null。

我现在正在解决这个问题,有几个if语句和一个try / catch,但我想知道是否有更简单的方法来做到这一点。我如何比较2个数组并发现差异,如果其中一个偶尔可以为空?

1 个答案:

答案 0 :(得分:1)

使用try / catch方法可能是您唯一的选择。帮助内容如下:

“如果引用集或差异集为null($ null),则Compare-Object会生成终止错误。”

您可以创建捕获null错误的catch,然后输出非null的数组,以显示缺少的null数组中的所有值。