简体   繁体   English

C# 如何在方法中检索List的数据

[英]C# how to retrieve data of List in a method

I have a method that gets data of students:我有一种获取学生数据的方法:

    public static List<Student> getStudentInfo()
    {

        List<Student> students = new List<Student>();
        students.Add(new Student(1, "Doe", "John", "someData"));
        students.Add(new Student(2, "Pit", "Brat", "someData1"));
        students.Add(new Student(5, "Kardasian", "Kim", "someData2"));
        students.Add(new Student(4, "Lee", "Chun", "someData"));
        .
        .
        return students;
    }

    foreach (Student s in students)
     Console.WriteLine(s);

I am trying to create a method that retrieves the data above using foreach (Student s in students) Console.WriteLine(s);我正在尝试创建一个使用foreach (Student s in students) Console.WriteLine(s); , but I cannot get and print the data. ,但我无法获取和打印数据。

How do I access the list in a method?如何访问方法中的列表?

Option 1. Override ToString()选项 1. 覆盖ToString()

Please see How to: Override the ToString Method (C# Programming Guide)请参阅如何:覆盖 ToString 方法(C# 编程指南)

 class Person { public string Name { get; set; } public int Age { get; set; } public override string ToString() { return "Person: " + Name + " " + Age; } }

Option 2. Print the fields separately选项 2. 单独打印字段

foreach (Student s in students)
     Console.WriteLine($"{s.Id} {s.SomeData}");

var students = getStudentInfo();
foreach (Student s in students)
Console.WriteLine(s); // `Student` doesn't override ToString(), this will be the name of the class.

foreach (Student s in students)
Console.WriteLine($"{s.Id}, {s.Name}"); 

Output Output

Program+Student
Program+Student
Program+Student
Program+Student
1, Doe
2, Pit
5, Kardasian
4, Lee

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM