【发布时间】:2015-04-09 20:49:53
【问题描述】:
我是 ArrayList 的新手。据我所知,ArrayLists 每个元素(?)可以包含多个值(请原谅我没有使用正确的术语)。
现在,问题来了,如果我创建一个每个元素仅包含一个值的 ArrayList,我可以轻松打印它,但是如下例所示,如果我尝试创建一个每个元素包含多个值的 ArrayList - 我无法打印 ArrayList 中每个元素的值。 如果我尝试使用 foreach 或 for 循环使用 Console.Writeline(list[i]);我得到的只是命名空间。
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication13
{
class Register
{
public string name;
public string surname;
public void RegisterData()
{
Console.Write("Enter your name: "); name = Console.ReadLine();
Console.Write("Enter your surname: "); surname= Console.ReadLine();
}
public void PrintData()
{
Console.WriteLine("Name: " + name + " Surname: " + surname);
}
}
class Program
{
static void Main(string[] args)
{
ArrayList list = new ArrayList();
Register temp = new Register();
temp.RegisterData();
list.Add(temp);
for (int i = 0; i < list.Count; i++)
{
// How can I use the PrintData (without modifying it) method to print the ArrayList values?
}
}
}
}
如何在不使用 PrintData 方法的情况下打印 ArrayList 的值?
提前谢谢你!
【问题讨论】:
-
您在代码中的注释与您在代码下方提出的问题有冲突,您可能需要澄清一下。