C# 数组内容不显示,但类型是

标签 c# arrays foreach messagebox

public partial class Form1 : Form
{
    private string[] myArray = { "Eddie", "Amber", "Kelly" };

    public void showMe()
    {
        foreach (string i in myArray) 
            MessageBox.Show(myArray.ToString()); 

    }

    private void button1_Click(object sender, EventArgs e) => showMe();
}

大家好,

我试图从 myArray 中获取名称以显示在 MessageBox 中,但我得到的只是一个 MessageBox使用 System.String[] 我不确定为什么? 有人可以告诉我我做错了什么吗?

谢谢

埃迪

最佳答案

这是 ToString() 的默认行为。它只打印对象的类型名称,除非为特定类型另行定义。

你想用

foreach (string i in myArray)
    MessageBox.Show(i);

为数组中的每个元素显示一个单独的消息框或

MessageBox.Show(string.Join(",", myArray));

显示包含数组所有元素的单个消息框。

关于C# 数组内容不显示,但类型是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51569067/

相关文章:

javascript - 我可以将 forEach 方法添加到 Array 原型(prototype)的 String 原型(prototype)吗?

php - 不使用foreach获取查询数据

javascript - 将对象和文件从 ajax 非法调用传递到 Web Api 2 Controller

c# - 有什么理由不重构它,使其更简单吗?

c# - 给定具有相同基类的不同类型对象列表,一个完全独立的类如何在没有 if/else 逻辑的情况下操作每个对象?

javascript - 带方括号的 JSON 数组键

c - 删除数组中相同的项

c# - 如何在 C# 中解决 Randomize in place 算法?

c# - $project 或 $group 不支持 <document>

javascript - Jquery DIV 中的每个输入(有一个表)