Foreach循环没有执行
本文关键字:执行 循环 Foreach | 更新日期: 2023-09-27 18:17:05
我发现了一个类似的解决方案,我试图跟进,但仍然未能解决。
我已经创建了一个学生类与公共属性First_Name &Last_Name。然后使用数组列表,我想得到&打印每个学生的详细信息。但是在执行代码之后,我得到的是空的控制台窗口。当我使用断点运行代码时,我看到代码流没有进入foreach循环。请帮帮我....
ArrayList studentList = new ArrayList();
public void getStudent()
{
foreach (Student student in studentList)
{
Console.Write("Enter Your First Name: ");
student.First_Name = Console.ReadLine();
Console.Write("Enter Your Last Name: ");
student.Last_Name = Console.ReadLine();
}
}
public void printStudentInformation()
{
foreach (Student student in studentList)
{
Console.WriteLine("-----------------------");
Console.WriteLine("Name Of The Student Is {0} {1}", student.First_Name, student.Last_Name);
Console.WriteLine("-----------------------");
}
}
当您第一次运行代码时,studentList
中没有学生,getStudent
中的foreach
将不会执行。创建新的Student
类实例,然后将FirstName
和LastName
存储在学生对象中,并将学生对象添加到studentList
数组中。
public void getStudent()
{
var student = new Student();
Console.Write("Enter Your First Name: ");
student.First_Name = Console.ReadLine();
Console.Write("Enter Your Last Name: ");
student.Last_Name = Console.ReadLine();
studentList.Add(student);
}
在使用foreach
显示值之前,您必须填充列表。为此,您可以使用以下代码。然后为每个应用您的应用程序来显示内容。因此,方法签名必须按如下方式更改:
public void getStudent()
{
List<Student> StudentList = new List<Student>();
string nextVal = "y";
while (nextVal == "N")
{
var student = new Student();
Console.Write("Enter Your First Name: ");
student.First_Name = Console.ReadLine();
Console.Write("Enter Your Last Name: ");
student.Last_Name = Console.ReadLine();
StudentList.Add(student);
Console.Write("Do you wnat to add more data(Y/N)");
nextVal = Console.ReadKey().ToString();
}
}