Ну, Main
определен, чтобы никогда не вызываться с параметром null
.Если он действительно получает каким-либо образом нулевой параметр, то ваша среда настолько нарушена, что все ставки отключены, независимо от того, что вы делаете, поэтому на самом деле нечего получить, проверяя null
.
С другой стороны, если вы делаете проверку на нулевое значение, то читатели и сопровождающие кода должны будут понять почему .Почему оригинальный программист вставил такую бесполезную проверку?Он знал что-то, чего мы не знаем?Мы не можем просто удалить его, потому что он, возможно, обнаружил какую-то странную ошибку в угловых случаях!
Другими словами, вы добавляете сложность в свою программу и запускаете будущих читателей кода.Не делай этого.Этот будущий пользователь может быть вы .Сделайте свое будущее счастливым и напишите код, который имеет смысл .
Однако в ситуациях, когда такая нулевая проверка действительно имеет смысл, это должно быть самое левое условие.
В таком тесте: args.Length == 0 || args == null
, args.Length
оценивается first , а в случае неудачи args
сравнивается с null
.Другими словами, если args
равно нулю, ваш код выдаст исключение.Должно быть args == null || args.Length == 0