"have got" and "haven't got" (in the sense you are asking about) are colloquial and not suitable for formal English. "have" and "don't have" may be used both formally and informally, but when talking about possession (especially) the versions with "got" tend to dominate in speech, at least in my part of the world.
New words, one handy idiom, and a 2-minute quiz — delivered to your inbox to keep your streak alive.
AnonymousTo me it seems that all these pairs are absolutely equal in meaning and that they are all grammatically correct.Yes, they are. Except the "got" version is very informal, and not accepted by picky English teachers.