Porównanie tablicy char z pustą wartością

0

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() != " ")
{

}
0
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.

0

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())
0

Użyj Nullable:

char?[][] array

Wtedy sprawdzasz array[0][0].HasValue.

0

Jak nullable to nawet coś tablicy zaolokować nie mogę:

char?[][] array = new char [input.Length, key];

0

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];
0
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.

0

@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.

1 użytkowników online, w tym zalogowanych: 0, gości: 1