【问题标题】:Check items from a List of ValueTuple and return results in another List of ValueTuple C#7检查 ValueTuple 列表中的项目并在另一个 ValueTuple C#7 列表中返回结果
【发布时间】:2018-07-19 12:43:26
【问题描述】:

请考虑以下 ValueTuple C#7 列表

static void Main(string[] args)

{

 List<(double prices, int matches)> myList = new List<(double, int)>();

                myList.Add((100, 10));  

                myList.Add((100.50 , 12)); 

                myList.Add((101 , 14));

                myList.Add((101.50 , 16));

}

在列表中搜索满足“价格”和“匹配”条件的项目并在另一个 ValueTuple 列表中返回结果的简单方法是什么。

例如,如果我想返回另一个满足“价格 > 101 且匹配 > 6”的 ValueTuples 列表

你能举个例子吗?

【问题讨论】:

    标签: list multiple-conditions valuetuple c#-7.3


    【解决方案1】:

    如果你给项目命名会更容易:

    var myList = new List<(double d,int i)>
                 {
                     (100, 10),
                     (100.50 , 12),
                     (101 , 14),
                     (101.50 , 16)
                 };
    
    var results = myList.Where(x => x.d>101 && x.i>6);
    

    没有名字你就得写

    var results = myList.Where(x => x.Item1>101 && x.Item2>6);
    

    C# 7.3 添加了元组相等但没有比较。你现在可以写了:

    var result = myList.Where(d=>d == (101,14));
    

    var result = myList.Where(d=>d != (101,14));
    

    但不是

    var result = myList.Where(d=>d > (101,14));
    

    【讨论】:

      猜你喜欢
      • 2018-12-22
      • 2017-10-30
      • 2017-09-03
      • 1970-01-01
      • 2022-11-13
      • 2019-04-15
      • 1970-01-01
      • 2019-03-03
      • 2022-08-24
      相关资源
      最近更新 更多