Arredondar decimais

3 respostas
L

Boas,

a soma dos meus doubles da-me numeros com muitas casas decimais e eu gostaria de saber se nao posso arredondar as casa decimais.

Por exemplo : se eu subtrair os numeros

213353.1 - 213507.4 = -154.2999999999999

e eu gostaria que ele arredondasse para -154.3

Outro caso é o seguinte : se eu tiver um resultado cujo o valor é :

213456.9 eu gostaria que me arredondasse automaticamente para 213457

3 Respostas

David

Dê uma olhada nesse tópico:

http://www.guj.com.br/posts/list/31480.java

renatosilva
import java.lang.Math;

public class Tatau {

	public static void main(String[] args) {		
		System.out.println(roundDecimalPart(-154.2999999999999f, 2));
	}
	
	public static double roundDecimalPart(float number, int deep) {
		double multiplier = Math.pow(10, (double) deep);
		return (double) (
			Math.round(number * multiplier)
			) / multiplier;
	} 

}
H

Vc pode usar o comando “Integer.parseInt”

Este comando tira as casas decimais de um determinado número. Por exemplo: se vc usar este comando em uma variável float, ela vai armazenar apenas o valor inteiro.

float d = 222.22
int c = Integer.parseInt(d); // o resultado disso será c==222

no seu caso, vc pode usar este comando antes de somar os valores ou no resultado final.

Abraço

Criado 26 de abril de 2006
Ultima resposta 27 de abr. de 2006
Respostas 3
Participantes 4