C # List Console

0

How do I display only the third list values, in the case of ("500, 900, 2000, 1500, 2000)."

And as I do this same process to display only the third values of the list that has associated the second value of the list equal to "Rectangular Table".

produtos.Add(new Produto(1001, "Cadeira simples", 500));
produtos.Add(new Produto(1002, "Cadeira acolchoada", 900));
produtos.Add(new Produto(1003, "Sofa de três lugares", 2000));
produtos.Add(new Produto(1004, "Mesa retangulares", 1500));
produtos.Add(new Produto(1005, "Mesa retangular", 2000));
    
asked by anonymous 21.07.2018 / 18:22

1 answer

0

One of the ways is using Linq.

In the example below I used the Where to select only" reatangular table "item and the Select to create a list with only the quantity property.

using System;
using System.Collections.Generic;
using System.Linq;

public class Program
{

    class Produto
    {
        public  Produto(int id, string nome,double quantidade)
        {
            this.id=id;
            this.nome=nome;
            this.quantidade=quantidade;
        }

        public int id {get;set;}
        public string nome {get;set;}
        public double quantidade {get;set;}

    }
    public static void Main()
    {
        List<Produto> produtos =new List<Produto>();
        produtos.Add(new Produto(1001, "Cadeira simples", 500));
        produtos.Add(new Produto(1002, "Cadeira acolchoada", 900));
        produtos.Add(new Produto(1003, "Sofa de três lugares", 2000));
        produtos.Add(new Produto(1004, "Mesa retangulares", 1500));
        produtos.Add(new Produto(1005, "Mesa retangular", 2000));

        var quantidades = produtos.Where(w=>w.nome=="Mesa retangular").Select(s=>s.quantidade);
        foreach (double qtd in quantidades)
            Console.WriteLine("Quantidade : {0}",qtd);


    }
}

See how it works in .NET Fiddle

If you just wanted to create a list with the quantity property, use the Select, like this:

using System;
using System.Collections.Generic;
using System.Linq;

public class Program
{

    class Produto
    {
        public  Produto(int id, string nome,double quantidade)
        {
            this.id=id;
            this.nome=nome;
            this.quantidade=quantidade;
        }

        public int id {get;set;}
        public string nome {get;set;}
        public double quantidade {get;set;}

    }
    public static void Main()
    {
        List<Produto> produtos =new List<Produto>();
        produtos.Add(new Produto(1001, "Cadeira simples", 500));
        produtos.Add(new Produto(1002, "Cadeira acolchoada", 900));
        produtos.Add(new Produto(1003, "Sofa de três lugares", 2000));
        produtos.Add(new Produto(1004, "Mesa retangulares", 1500));
        produtos.Add(new Produto(1005, "Mesa retangular", 2000));

        var quantidades = produtos.Select(s=>s.quantidade);

        foreach (double qtd in quantidades)
            Console.WriteLine("Quantidade : {0}",qtd);


    }
}

Example on .NET Fiddle

    
21.07.2018 / 19:27