Potrzebuję dodać wiele zmiennych typu nullable int. Użyłem operatora koalescencyjnego zerowego, aby ustawić go w jednej zmiennej na linię, ale mam wrażenie, że jest to bardziej zwięzły sposób, np. nie mogę jakoś połączyć tych stwierdzeń, widziałem to wcześniej w innym kodzie.Czy istnieje bardziej elegancki sposób dodawania zerowej liczby int?
using System;
namespace TestNullInts
{
class Program
{
static void Main(string[] args)
{
int? sum1 = 1;
int? sum2 = null;
int? sum3 = 3;
//int total = sum1 + sum2 + sum3;
//int total = sum1.Value + sum2.Value + sum3.Value;
int total = 0;
total = total + sum1 ?? total;
total = total + sum2 ?? total;
total = total + sum3 ?? total;
Console.WriteLine(total);
Console.ReadLine();
}
}
}
Prosty, zwięzły i działa z tym, co już tam jest. +1 – stakx
Czy Twoje podejście jest lepsze (z punktu widzenia wydajności) niż po prostu "int total = (sum1 ?? 0) + (sum2 ?? 0) + (sum3 ?? 0);"? Chodzi mi o to, że tworzysz tablicę, by zsumować swoje wartości. Czy to ma wpływ na wiele? Po prostu chcę wiedzieć, chociaż najpierw napisałem dokładnie taki sam kod, a potem wyszedłem go szukając ;-) –