Because you are using a new Random()
instance for each call. By default it is seeded with the current system time, which means that multiple Random
instances created at the same time will give the same values.
Make the Random
instance a static
field instead to keep it alive between the calls.