Rect and RectF in Android SDK

What is the difference between Rect and RectF in the Android SDK?


Using Rect you define its edges using integers and using RectF they are defined as floats.

Looking at them more carefully I have spotted a few differences actually. I will only list what one implementation has more compared to the other one.

Rect

  • equals(Object obj) (for some reason it has its own implementation of equals)
  • exactCenterX()
  • exactCenterY()
  • flattenToString()
  • toShortString()
  • unflattenFromString(String str)

RectF

  • round(Rect dst)
  • roundOut(Rect dst)
  • set(Rect src)

So apparently there are some differences.


Rect is final, RectF can be extended