Separa a parte inteira da fracionada no Double [RESOLVIDO]

Galera, é o seguinte estou precisando separar a parte inteira da fracionada de uma variavel do tipo double;

Ex:

double valor = 3,58

parte inteira - 3
parte fracionada - 58

como fazer isso?

double valor = 3,58 int parteInteira = (int)valor; double parteFracionaria = valor - parteInteira;

Outra forma, mais didática e menos lógica, seria:

String[] x; //cria um array String b = "5,17"; //o valor a ser tratado x = b.split(","); //escolhe o token separador, que definirá o array System.out.println(x[0]); = 5 //posição 1 do array System.out.println(x[1]); = 17//posição 2 do array

Obviamente, se o double for bastante grande converter para int ou long não vai funcionar. Você precisa de uma função:

double parteInteira (double valor) {
    if (valor &gt= 0.0) {
        return Math.floor (valor);
    } else {
        return Math.ceil (valor);
    }
}

double parteFracionaria (double valor) {
    if (valor &gt= 0.0) {
        return valor - Math.floor (valor);
    } else {
        return valor - Math.ceil (valor);
    }
}

Valeu !.. o sistema é simples deu pra fazer blz…