【问题标题】:Selecting range of data in an array选择数组中的数据范围
【发布时间】:2015-04-22 15:08:19
【问题描述】:

我正在尝试在 if 语句中选择 VB.net 中二维数组中的数据范围。而不是做类似的事情:

If griddata(0, 0) and griddata(0, 1) and griddata (0, 2) = 0 Then

我可以做类似的事情吗:

If griddata(0, 0 to 0, 2) = 0 Then

显然第二个代码 sn-p 不正确,但我想问是否可以以类似的方式选择数组中的范围,而不是手动定义我想要的数组的每个部分,因为我觉得这会如果不是效率低下,写起来很费时间。

提前致谢!

【问题讨论】:

  • 您的第一行缺少两个= 0。否则,您将执行 按位与,然后将其与 0 进行比较,这可能不是您想要的。另外,您可以使用AndAlso

标签: vb.net


【解决方案1】:

这是摆脱冗余的一种可能性,但老实说,它并不容易阅读:

If Enumerable.Range(0, 3).All(Function(i) griddata(0, i) = 0) Then

If {0, 1, 2}.All(Function(i) griddata(0, i) = 0) Then

参考资料:

【讨论】:

  • 乍一看更难理解,也更难记住。我想我现在会坚持使用老式方法,除非出现另一种选择,因为我的数据集非常小。不管怎么说,还是要谢谢你。当我使用更大的数组时,我一定会回头看看这个答案。
猜你喜欢
  • 2015-01-17
  • 1970-01-01
  • 2019-03-30
  • 1970-01-01
  • 2021-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-13
相关资源
最近更新 更多