在数组中添加和更改项
本文关键字:添加 数组 | 更新日期: 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>
来更好地清晰。