3 回答
TA贡献1865条经验 获得超7个赞
如果没有被覆盖,ToString()将显示对象类型的名称。在您的情况下,它将显示List<int>类型名称:
System.Collections.Generic.List`1[System.Int32]
如果要显示列表的内容,则应手动创建字符串。例如
var formattedPattern = String.Join(", ", pattern); // "2, 1, 3, 2"
MessageBox.Show(formattedPattern );
如果您想在每次迭代中显示单个列表项,您可以按照@MikeH 的建议通过索引引用它们,或者只使用一个临时变量
var nextNumber = number.Next(1, 4);
pattern.Add(nextNumber);
MessageBox.Show(nextNumber.ToString());
TA贡献1862条经验 获得超7个赞
pattern
是一个List<int>
。当你这样做.ToString()
时,它是在整个对象上(即所有项目,而不仅仅是一个)。 List
不提供显示项目的方法,因此它只返回类型。
要一次显示一个数字,您需要这样做:
pattern[counter].ToString()
这将选择列表中的特定项目,因为counter
与列表的当前索引匹配。
TA贡献1906条经验 获得超10个赞
您正在尝试在消息框中显示列表对象。而是尝试下面的代码
for (int counter = 0; counter < rounds; counter++)
{
var randNo = number.Next(1, 4);
pattern.Add(randNo );
MessageBox.Show(randNo);
}
- 3 回答
- 0 关注
- 153 浏览
添加回答
举报