C# 嵌套列表条目问题

标签 c# arrays nested-lists

我想在我的数据采集应用程序中使用嵌套列表来动态存储我传入的 16 位数据。我创建了一个 UInt16 的列表,并将它添加了三次(NUMCHANNEL=3)到一个 List 类型的列表中。现在我希望我可以按照下面代码所示的方式添加一个 Uint16 条目:

public List<UInt16> TBATT16 = new List<UInt16>();
public List<List<UInt16>> LBATT16 = new List<List<UInt16>>();
for (int i = 0; i < NUMCHANNEL; ++i)
        {
            LBATT16.Add(TBATT16);
        }

LBATT16[0].Add((ushort)(0x1155));

它确实会添加一个条目,但不仅会添加到 LBATT16[0],还会添加到所有 LBATT16 列表。我在这里做错了什么?

最佳答案

您需要将列表创建移动到循环内:

public List<List<UInt16>> LBATT16 = new List<List<UInt16>>();
for (int i = 0; i < NUMCHANNEL; ++i)
{
    //Make a unique list for each element
    public List<UInt16> TBATT16 = new List<UInt16>();
    LBATT16.Add(TBATT16);
}

LBATT16[0].Add((ushort)(0x1155));

关于C# 嵌套列表条目问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8057614/

相关文章:

c# - 服务的事件日志抛出错误,指出未设置源

c# - 在此 C# 代码中,符号 "=>"在我的方法之后做什么?

c# - ASP.NET核心: How to add a second model to my View

javascript - 如何在Javascript中将JSON字符串解析为数组

arrays - 初始化数组与分配内存有何不同?

ruby - 给定n,在ruby中如何求出n为1、3、4之和的不同写法的个数?

html - 嵌套 ul 水平对齐

c# - 将项目添加到列表 T 通用方法

python - 配对嵌套列表中的元素

android嵌套的recyclerview