在数组中添加和更改项

本文关键字:添加 数组 | 更新日期: 2023-09-27 18:17:31

你能帮我吗?

我有一个包含商品、价格和数量的数组。如果项目在数组中存在,它必须更新价格和数量,如果它不存在,它必须添加

这是我的代码,我已经尝试过:

if (line.Contains(ItemCode))
{
    string[] details = line.Split(new string[] { "|" }, StringSplitOptions.None);
    {
        for (int i = 0; i < details.Length; i++)
        {
            if (details[i].Contains(ItemCode))
            {
                string[] line_details = details[i].Split(',');
                string replace = line_details[2].Trim() + "," + line_details[3].Trim();
                double NewQty = double.Parse(Qty) + double.Parse(line_details[2]);
                double NewPrice = (double.Parse(UnitPrice) * double.Parse(Qty));
                double NewUnitPrice = NewPrice + double.Parse(line_details[3]);
                string new_replace = NewQty + "," + NewUnitPrice;
                line = line.Replace(replace, new_replace);
            }
        }
    }
}
else
{  
    line = line + "'"Detail'",0," + Qty + "," + (double.Parse(UnitPrice) * double.Parse(Qty)) + "," + InclusivePrice + ",'"" + UnitUsed + "'"," + TaxType + "," + DiscountType + "," + DiscountPercentage + ",'"" + ItemCode + "'",'"" + Description + "'"," + SearchType + "," + "'"'"" + ",'"" + MultiStore + "'"|" + Environment.NewLine;
}

不能用了,你能帮我一下吗?

在数组中添加和更改项

c#中的数组在初始化后不能添加条目。您最好使用List<String>,在那里您可以从列表中添加和删除条目。或者考虑Dictionary<Int32, String>,它允许您使用ItemCode作为标识符,以便更容易找到给定的条目。

作为进一步的观点,而不是将所有项目数据存储在一个分隔的字符串中,为它们创建一个新的类,将各种详细信息作为属性,然后您可以使用理论Dictionary<Int32, ItemObject>来更好地清晰。