Использование: обрабатывает случай, когда k или l равны нулю, ничего не делая. Используется в тех случаях, когда с недопустимыми параметрами ничего не следует делать.
Примечание. Возможно, вы имели в виду && вместо &
void function(string k,string l)
{
if(k!=null &l!=null)
{
//do some operation on k and l
}
}
Использование: Игнорирует вероятность того, что k или l равны нулю. Используется, если вы точно знаете, что k и l были созданы.
void function(string k,string l)
{
//do some operation on k and l
//i do understand that i get nullreference
//exceptions for null values of k and l
//one use case i have seen this type of function: in a class
//private methods when u are sure of passing non-null objects.
}
Использование: обрабатывает случай, когда k или l равны нулю, заставляя вызывающее местоположение обрабатывать ошибку. Используется в случаях, когда функция не обладает достаточными знаниями для правильной обработки ошибки.
void function(string k,string l)
{
if (k==null)
throw new ArgumentNullException("k is null");
if (k==null)
throw new ArgumentNullException("l is null");
// do some operation on k and l
}