Mam 3 wartości logiczne na moim kodzie (C#) i właściwości int32
, która zależy od wartości boolowskich true
i false
. Co najlepszym sposobem do osiągnięcia tego celu w inny sposób niż w przypadku stwierdzenia typu:Najlepszym sposobem sprawdzenia wielu warunków logicznych w C#, jeśli instrukcje
if(a && b && !c)
d = 1;
if(a && !b && !c)
d = 2;
//etc.. ect...
EDIT: 3 booleans musi mieć każdą możliwą kombinację, aby ustawić wartość Int32.
EDYCJA 2: Wartość "d" może być taka sama dla dwóch różnych porównań boolean.
Jeśli nie zawsze są dokładnie trzy wartości logiczne, można zbudować stolik z wyprzedzeniem, a potem po prostu wyszukać konkretną pozycję, korzystając z wartości logicznych jak klucze. – cdhowie
Tablica liczb całkowitych, a następnie 3 wartości logiczne używane jako pojedyncze bity do indeksowania właściwego wpisu. Rodzaj kompaktowej reprezentacji drzewa binarnego. –
Do EDYCJI: moja odpowiedź pokazuje, jak obliczyć "indeks kombinacyjny" z warunków składowych – sehe