Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
307 views
in Technique[技术] by (71.8m points)

c# - Print List of objects to Console

I created a list with Listobj object type. And added a set of values to the object.

How do I print the Listobj objects from the newlist in an increasing age fashion.

class Listobj
{
    int age;
    string name;

    public int Age
    {
        get { return age; }
        set { age = value; }
    }

    public string Name
    {
        get { return name; }
        set { name = value; }
    }

    static List<Listobj> newlist = new List<Listobj>();
    static void Main(string[] args)
    {
        /*newlist.Add(10);
        newlist.Add(2);
        newlist.Add(6);
        newlist.Sort();
        newlist.ForEach(Console.WriteLine);
        Console.ReadLine();*/
        Listobj obj = new Listobj();
        int tempage = 23;
        string tempname = "deepak";
        obj.Age = tempage;
        obj.Name = tempname;
        Listobj.newlist.Add(obj);
        foreach (Listobj item in newlist)
            Console.WriteLine(item);
        Console.ReadLine();
    }
}
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

I would override ToString in your Listobj class.

public class Listobj
{
    private int age;
    private string name;

    public int Age
    {
        get { return age; }
        set { age = value; }
    }

    public string Name
    {
        get { return name; }
        set { name = value; }
    }

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

Then you can print like so:

foreach (var item in newlist.OrderBy(person => person.Age)) Console.WriteLine(item);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...