Cómo convertir float a int con Java

Usé la siguiente línea para convertir float a int, pero no es tan preciso como me gustaría:

 float a=8.61f;
 int b;

 b=(int)a;

El resultado es :8 (Debería ser9)

Cuandoa = -7.65f, el resultado es :-7 (Debería ser-8)

Cuál es la mejor manera de hacerlo ?