Что является хорошей альтернативой использованию "! - в сравнительном заявлении?
Недавно я просматривал какой-то код, который написал несколько месяцев назад, и потратил впустую время, потому что пропустил"!", предшествующее сравнению, как показано ниже
if(!string.IsNullOrWhiteSpace(parm)){// Do some stuff... }
Я не знаю, считается ли это плохой практикой, но ее демонстративно легко пропустить, так что же является хорошей альтернативой?
Что я уже пробовал:
if(!string.IsNullOrWhiteSpace(parm)){// Do some stuff... } if(string.IsNullOrWhiteSpace(parm) != true){ // Do some stuff... // Best solution so far, but // seems like the coding equivalent of a double negative. // ie. "!= true", should just be "false". } if(!string.IsNullOrWhiteSpace(parm)){// Do nothing but waist space and bytes} else{// Do some stuff.. }
Для собственного развлечения я хотел бы отметить, что даже текстовый процессор Code Project пропускает его интерпретаторы.
!string.IsNullOrWhiteSpace(parm)
должно выглядеть так без пробелов
! string.IsNullOrWhiteSpace(parm)
Richard Deeming
Ну, вы могли бы заменить != true
с == false
чтобы избавиться от двойного негатива.
Также посмотрите на свои настройки белого пространства-оно может быть более четким с пробелом между ними. if
и (
, и, возможно, пробелы внутри скобок:
if ( !string.IsNullOrWhiteSpace(param) ) {
ryanba29
Даже если он не чище, чем "!= true", он избавляется от двойного негатива. Для меня это улучшение, и я приму это как ответ, если ничего лучшего не будет предоставлено. Спасибо.