Zakładając, że mam tablicę dwuwymiarową jednak nie wszystkie pola są wypełnione. Jak napisać warunek w ifie, że jeśli nie ma wartości to coś robi ?
Takie coś nie działa:
if(array[k,l].ToString() != " ")
{
}
Zakładając, że mam tablicę dwuwymiarową jednak nie wszystkie pola są wypełnione. Jak napisać warunek w ifie, że jeśli nie ma wartości to coś robi ?
Takie coś nie działa:
if(array[k,l].ToString() != " ")
{
}
string.IsNullOrEmpty()
Nie używaj Jagged Array bo to dziadostwo.
Pytanie jeszcze jakiego typu jest to tablica? Bo jeżeli int (lub inne value type) to musisz użyć nullable.
Tak jak w temacie tablica jest typu char
Ta metoda nie działa IsNullOrEmpty() pokazuje błąd, że typ char nie ma takiej metody
Zamieniłem tablice na string i też nie działa:
if(array[k,l].IsNullOrEmpty())
Użyj Nullable:
char?[][] array
Wtedy sprawdzasz array[0][0].HasValue
.
Jak nullable to nawet coś tablicy zaolokować nie mogę:
char?[][] array = new char [input.Length, key];
Nullable jest typem referencyjnym, zupełnie innym niż char, zatem tworzenie musi wyglądać tak:
char?[][] array = new char?[input.Length, key];
Tu jest poprawna wersja:
char?[,] array = new char? [input.Length, key];
Pijany Rycerz napisał(a):
Jak nullable to nawet coś tablicy zaolokować nie mogę:
char?[][] array = new char [input.Length, key];
Nie możesz do tablicy tablic przypisać tablicy wielowymiarowej, i to nie ma związku z Nullable
.
śmieszek napisał(a):
Nullable jest typem referencyjnym
Bzdura, to jest struktura, więc z definicji typ wartościowy.
@somekind: racja, mój błąd. Człowiek uczy się całe życie. Nullable to struktura co nawet wydaje mi się teraz logiczne.
Nie możesz do tablicy tablic przypisać tablicy wielowymiarowej, i to nie ma związku z Nullable.
Ja mu źle podałem odpowiedź. To nie ma związku, ale sprawdzanie czy wartość została ustawiona na Value Type już tak.