4

Lets say I have a string variable FirstName. FirstName can be null. I need to know if FirstName exists or not.

Is it better to just use one variable: FirstName and if FirstName is empty assume that it doesn't exists

OR

Create two variables:
Boolean HasFirstName and String FirstName

The benefits of this is I know positively that FirstName doesn't exist but on the down side it creates two variables.

  • 4
    Some languages make a distinction between firstName == null and firstName == "" – Dan Pichelman Sep 23 '15 at 19:18
7

I would argue against both choices and would use an option type instead. An option type either contains no value or, or in this case, a string.

Many languages, especially functional ones, have such types built-in. Even if your chosen language doesn't support it directly, an Option<T> is a simple type to create.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.