devi solo strutturarlo un po' meglio:
codice:
double numero = 4.12; //numero di esempio
final double soglia = 0.5;
int parteIntera = (int) numero;
double parteDecimale = numero - parteIntera;

double scarto= soglia-parteDecimale;
if(scarto >= 0) {
    if(parteDecimale < scarto) numero = parteIntera;
    else numero = parteIntera + soglia;
} else {
    if(parteDecimale >= scarto+1) numero = parteIntera+1;
    else numero = parteIntera + soglia;
}
non l'ho testato, percio' non garantisco... cmq gli strumenti li hai tutti, basta pensare un minimo alla logica matematica da applicare