Pessoal, estou com um problema com tipos primitivos.
Tenho um método mais ou menos assim:
public void calcularMediaSituacao(String nota1,
String nota2,
String nota3,
String nota4,
String nota5,
String nota6 ) {
Double totalNotas =0.0, valorNota1 = 0.0 , valorNota2 = 0.0, valorNota3 = 0.0 , valorNota4= 0.0 , valorNota5 = 0.0, valorNota6 = 0.0;
Double mediaTempMant;
Integer mediaTempInt;
valorNota1 = Double.valueOf(nota1.replace(",", ".")) * Double.valueOf( "1" );
valorNota2 = Double.valueOf(nota2.replace(",", ".")) * Double.valueOf( "2" );
valorNota3 = Double.valueOf(nota3.replace(",", ".")) * Double.valueOf( "3" );
valorNota4 = Double.valueOf(nota4.replace(",", ".")) * Double.valueOf( "4" );
valorNota5 = Double.valueOf(nota5.replace(",", ".")) * Double.valueOf( "5" );
valorNota6 = Double.valueOf(nota6.replace(",", ".")) * Double.valueOf( "6" );
totalNotas = (valorNota1 + valorNota2 + valorNota3 + valorNota4 + valorNota5 + valorNota6) / Integer.valueOf( "2" );
mediaTempInt = totalNotas.intValue();
mediaTempMant = totalNotas - mediaTempInt;
}
Se eu passar para esse método
calcularMediaSituacao("4,6", "8", "0", "0", "0", "0")
eu esperaria:
totalNotas = 6,3
mediaTempInt = 6
mediaTempMant = 0,3
Porém, a variável mediaTempMant, está ficando com o valor 0,[telefone removido]
O que está acontecendo? Qual cast que está errado?