计数出现次数

本文关键字: | 更新日期: 2023-09-27 17:57:33

当前我有一个字符串声明为RxString。Rxstring表示数据字符串,例如:

T  112   22.0

现在我需要提取出数据的中间值来进行比较。因此我做了拆分。代码如下:

string[] number = RxString.Split(' '); 
string unit = number[1];  

所以现在中间值被声明为字符串单元。

正在从串行端口接收数据,例如:

T  11   22.2
T  42   22.0
T  42   22.0
T  42   23.2
T  22   20.8

根据中间值的出现次数,我需要执行一些操作。例如,如果42恰好在行下出现4次(一个接一个),我需要执行一个操作,否则数据的记录将照常进行。我该如何处理计数?

while (serialPort1.IsOpen)
{       
string[] number = RxString.Split(' '); 
string unit = number[1];  
(Code for checking repeat)
if (unit repeats 4times)
{execute an action then record in db then reset counter}
else
{record in db then reset counter} 
}

有道理吗?

计数出现次数

假设您有一个数组,用于所有中间值:

string[] values = {11, 42, 42, 42, 22};
int count = 1;
for(int i = 1; i < values.Count; i++) {
    if(values[i-1] == values[i])
        count++;
    else
        count = 1;
    if(count == 4 && values[i] == "42")
       Execute();  // Change this
    RecordInDb();  // Change this
}
相关文章:
  • 没有找到相关文章