Проверить элементы из списка ValueTuple и вернуть результаты в другой список ValueTuple C#7
Пожалуйста, рассмотрите следующий список 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.
Например, если я хочу вернуть другое собрание Списка ValueTuples, "цены> 101 и совпадения> 6"
Можете ли вы опубликовать пример, пожалуйста?
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));