Library for Accelerometer MMA7361

double AcceleroMMA7361::getXRaw()
{
  return analogRead(_xPin);
}

double AcceleroMMA7361::getYRaw()
{
  return analogRead(_yPin);
}

double AcceleroMMA7361::getZRaw()
{
  return analogRead(_zPin);
}

double AcceleroMMA7361::getXVolt()
{
  return _mapMMA7361V(analogRead(_xPin));
}

double AcceleroMMA7361::getYVolt()
{
  return _mapMMA7361V(analogRead(_yPin));
}

double AcceleroMMA7361::getZVolt()
{
  return _mapMMA7361V(analogRead(_zPin));
}

double AcceleroMMA7361::getXAccel()
{
  return _mapMMA7361G(analogRead(_xPin))+ _xOffset;
}

double AcceleroMMA7361::getYAccel()
{
  return _mapMMA7361G(analogRead(_yPin)) + _yOffset;
}

double AcceleroMMA7361::getZAccel()
{
  return _mapMMA7361G(analogRead(_zPin)) + _zOffset;
}

long AcceleroMMA7361::_mapMMA7361V(int value)
{
  return map(value,0,1024,0,5000);
}

long AcceleroMMA7361::_mapMMA7361G(int value)
{
  return map(value,0,1024,-800,1600);
}

analogRead returns an int, and map return an int too, so what is the advantage using floats?