浮点数精度问题

Aberta
#1 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
1/5
Tempo estimado
Menos de uma hora
Facilidade para iniciantes
20/100
Tipo de issue
Documentação
Clareza
Precisa de esclarecimento
Status de atividade
Estagnada
Stack de tecnologia
java
Domínio
documentation

Direção de pesquisa

The issue contains Java examples explaining floating-point precision, but it names no file, test, or entry point and does not request a specific change. First identify where this explanation belongs in the repository; completion is undefined until the desired documentation update and its location are specified.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

精度问题出现的本质原因是浮点数无法精确的表示大多数十进制小数,以下面的计算为例:

System.out.println(81.6 * 10);
System.out.println(81.6 * 100);

其输出结果是:

816.0
8159.999999999999

数字81.6在写出来之后就不是精确表示了,随后的计算所以也随之不准确。下面的除法是准确的:

System.out.println(816 / 100D);

因为对于整数,816和100都是可以精确表示的,所以最后的结果便是对的。

Linguagem predominante
Java
Estrelas
2k
Forks
714
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de seaswalker/jdk-sourcecode-analysis

Todas as issues de seaswalker/jdk-sourcecode-analysis

Issues semelhantes

Mais issues de Java

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.