División en Java siempre resulta en cero (0)? [duplicar]

Esta pregunta ya tiene una respuesta aquí:

Valor doble devuelve 0 [duplicado] 3 respuestas

La siguiente función obtiene dos valores de las preferencias compartidas, peso y altura, y los uso para calcular el IMC. Cuando imprimo el contenido de los valores, obtengo los valores que ingresé en las preferencias compartidas (lo cual es bueno), pero luego, cuando ejecuto una operación de división en ellos, siempre obtengo 0 como resultado ... ¿Dónde está el error?

<code>public int computeBMI(){
    SharedPreferences customSharedPreference = getSharedPreferences(
            "myCustomSharedPrefs", Activity.MODE_PRIVATE);

    String Height = customSharedPreference.getString("heightpref", "");
    String Weight = customSharedPreference.getString("weightpref", "");

    int weight = Integer.parseInt(Weight);
    int height = Integer.parseInt(Height);
    Toast.makeText(CalculationsActivity.this, Height+" "+ Weight , Toast.LENGTH_LONG).show();

    int bmi = weight/(height*height);
    return bmi;

}
</code>

Respuestas a la pregunta(3)

Su respuesta a la pregunta