I think nearly every field type (except check boxes) return an empty string when the value is not set, or at least that is what I have seen so far. I know it does this with Date field and I find it annoying that if there is a value, I get a Date, but if there is no value, I get a string.