Some things are always an integer. Samples are always integer. You can take 108 or 109 samples.
Sample rate can be a floating point number, or more generally a rational, or even a real.
You calculate the sample rate by dividing the number of samples (less one to get the number of periods between samples) by the time it takes to obtain those samples.
Generally a floating point number is an approximation to the real number you want. With double precision, it's a very good approximation, but it's usually inexact.
If you're given a sample rate, and a time, the product might be an exact integer, if the numbers are chosen carefully, but it probably won't be. It might be in error a small amount, due to the approximation of floating point representation. It might be in error a lot, because the source of your information chose very approximate numbers, or even made up the numbers to start with.