0

我有一组值

Dim result() As String = Split(values, ",")

“值”中的数据如下所示:

1576, 1589
1567, 1564
1555, 1570
1562, 1521

我想要做的是循环遍历数组,一次一行并比较值

if v1 (eg 1576) <= v2 (eg 1589) then record the number 1 in a separate variable, else 0

结果变量以及记录的结果将如下所示:

1
0
1
0
4

2 回答 2

3

您可以使用 LINQ 来做到这一点:

Dim result() As String = (From i In values _
                          Let split = i.Split(",") _
                          Select If(Integer.Parse(split(0).Trim()) < Integer.Parse(split(1).Trim()), "1", "0")).ToArray()
于 2013-09-27T17:15:04.123 回答
0

您可能希望将数组中的每对值存储为单个字符串,例如(伪代码):

dim dataArray as new List(Of String)

for each line as string in InputFile
    dataArray.add(line)
Next

for each pair as string in dataArray
    dim v1, v2 as integer
    v1 = pair.Split(",")(0)
    v2 = pair.Split(",")(1)

    if v1 <= v2 then
        Console.WriteLine("1")
    Else
        Console.WriteLine("0")
    EndIf
Next

那是假设您正在从某种文件中读取这些值。如果是这样,您最好在阅读它们时进行比较。无论如何,这是一个快速而肮脏的解决方案。

于 2013-09-27T17:17:10.937 回答