标题有些令人困惑,让我试着解释一下我想要做什么。 我同时收到2个字符串,它们在每个接收上相互连接,但可能与下一个接收的数据有关,也可能没有。
所以,如果我收到这个组合:
ID24
PART2
我想创建一个变量来增加该组合的计数器,例如:
ID24-PART2++ (1)
然后,在下一轮接收中,我可以得到这个:
ID59
PART2
所以我会增加那个特定的计数器:
ID59-PART2++ (1)
最后确定,如果我再次收到:
ID24
PART2
然后:
ID24-PART2++ (2)
希望我能很好地解释自己。表现很重要。
也许是某种阵列:
data["ID24"]["PART2"]++;
答案 0 :(得分:2)
有一个将一对字符串映射为整数的字典:
Dictionary<Tuple<string, string>, int> dictionary = ...
答案 1 :(得分:0)
解决方案可能是使用散列映射。获取两个输入,将它们转换为字符串,然后将它们存储在hashmap中,其中两个输入作为键,计数器作为值。
答案 2 :(得分:0)
我要做的是将两个字符串一起添加,并将其作为字符串添加到字典中:
Dictionary<Tuple<string,string>,int> stringDict = new Dictionary<Tuple<string,string>,int>();
然后对于您收到的每个字符串对:
Tuple<string,string> stringTuple = new Tuple<string, string>(string1, string2); //string1 and string2 are the strings you recieve
if(stringDict.ContainsKey(stringTuple))
stringDict[stringTuple]++;
else
stringDict.Add(stringTuple, 0);
如果您想通过foreach
循环进行迭代,可以使用类似的方法:
foreach(KeyValuePair<Tuple<string, string>, int> kvp in stringDict)
{
Tuple<string, string> keyTuple = kvp.Key;
int tupleCount = kvp.Value;
}