Почему значение по умолчанию для строкового типа null вместо пустой строки?
Это довольно раздражает, чтобы проверить все мои строки дляnull
прежде чем я смогу безопасно применять методы, такие какToUpper()
, StartWith()
и т.д...
Если значение по умолчаниюstring
если бы была пустая строка, мне не пришлось бы проверять ее, и я бы чувствовал, что она более соответствует другим типам значений, таким какint
или жеdouble
например. ДополнительноNullable<String>
будет иметь смысл.
Так почему же дизайнеры C # решили использоватьnull
как значение по умолчанию строк?
Примечание: это относится кэтот вопрос, но больше сосредоточен на том, почему вместо того, что с ним делать.