热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何通过精确计算使2除以3的结果接近0.66?

在Java编程中,若需实现两个整数(例如2和3)相除并保留两位小数的结果,可以通过精确计算方法来达到预期效果。具体而言,可以利用BigDecimal类进行高精度运算,确保2除以3的结果准确显示为0.66。此外,还可以通过格式化输出来控制小数位数,确保最终结果符合要求。
各位大虾:
    我向问个java的初始问题:现我有两个整数,如2,3.
    我想让他们相除后等于保留两位得小数,如 2/3 结果为 0.66。
    我该如何做?

    谢谢!

19 个解决方案

#1


java中取保留小数位时用啥api好些?如上所示

#2


Float

#3


Float

#4


指得是float的intBitsToFloat(int myint)嘛?
能详细些吗?

#5


HELP?
我怎么能把double OR float 的小数位给取到呢?怎么保留2位小数?

#6


剛寫的不知道是否正確
試一試吧
public String zhh(double dou)
{
 try
 {
  aaa=String.valueOf(dou);
 }
 catch (Exception ex1)
 {
 aaa="0.00";
 }
 
 int bbb=aaa.indexOf('.');
 if(bbb==-1)
 {
 aaa=aaa+".00";
 }
 if(aaa.length()-bbb==1 && bbb!=-1)
 {
  aaa=aaa+"00";
 }
 if(aaa.length()-bbb==2 && bbb!=-1)
 {
  aaa=aaa+"0";
 }
 aaa=aaa.substring(0,aaa.indexOf('.')+3);
 return aaa;
}

#7


new java.math.BigDecimal(Float).setScale(2,5)就可以实现,其中的2表示保留两位小数,其中的5表示四舍五入

#8


我定义了一个float f,中间对其进行了计算。
当我想用int i=f.intValue()把f转换成int时,确发生了错误。不知道为什么。

#9


double x=2/3;
x=((int)(x*100))/100

#10


樓上的經典
不過好像要
double x=(double)2/3;

#11


楼上的好方法!
收藏!

#12


好!

学习!

#13


good

#14


import java.util.* ;
import java.text.* ;
public class Hashtest {
public static void main(String[] args) {
DecimalFormat oFormat1 = new DecimalFormat("##.##")  ;
DecimalFormat oFormat2 = new DecimalFormat("##.##%")  ;

double s = (double)2/3 ;
System.out.println(s);
String strResult1 = oFormat1.format(s);
System.out.println(strResult1);
strResult1 = oFormat2.format(s);
System.out.println(strResult1);
}
}
供参考

#15


/**
 * 保留小数
 * int num -小数位数
 * double value 数字
 */
private double changeDecimal(int fraction,double value){
BigDecimal b= new BigDecimal(value);
double v=b.setScale(fraction, BigDecimal.ROUND_HALF_UP).doubleValue();// 表明四舍五入,保留两位小数
return v;
}

现在是四舍五入的
把BigDecimal.ROUND_HALF_UP改一下,就是不进位了。
你做个参考吧

#16


DecimalFormat df = new DecimalFormat("#####0.00"); 
df.format(变量);

#17


谢谢楼上各位!问题解决了。

#18


haha

乘100除了再除100,这种自己编写"API"的技巧,一定要随时随地地加以运用,因为:
API实在太多,谁也不愿意去查找帮助,查找API,常用的API都是自己写算法解决的。写算法需要的时间,比查找API所需要的时间少多了。

我以前做一个项目和6个人合作用了半年,现在我一个人20天就可以了,虽然已经超级熟练,但是我对API一点都不熟,我有了异常的自己写API的能力了

#19


Float

#20


  • 一个整数N除以2余1,除以3余2,除以4余3,...,除以10余9,但除以11余0,计算符合该条件的最小整数
  • c语言中-1除以2为什么等于0?

推荐阅读
  • 投融资周报 | Circle 达成 4 亿美元融资协议,唯一艺术平台 A 轮融资超千万美元 ... [详细]
  • 本文深入探讨了CGLIB BeanCopier在Bean对象复制中的应用及其优化技巧。相较于Spring的BeanUtils和Apache的BeanUtils,CGLIB BeanCopier在性能上具有显著优势。通过详细分析其内部机制和使用场景,本文提供了多种优化方法,帮助开发者在实际项目中更高效地利用这一工具。此外,文章还讨论了CGLIB BeanCopier在复杂对象结构和大规模数据处理中的表现,为读者提供了实用的参考和建议。 ... [详细]
  • 基址获取与驱动开发:内核中提取ntoskrnl模块的基地址方法解析
    基址获取与驱动开发:内核中提取ntoskrnl模块的基地址方法解析 ... [详细]
  • 每日精选Codeforces训练题:1119E(贪心算法)、821C(栈模拟)和645D(拓扑排序)
    题目涉及三种不同类型的算法问题:1119E(贪心算法)、821C(栈模拟)和645D(拓扑排序)。其中,1119E的问题背景是有n种不同长度的棍子,长度分别为2^0, 2^1, …, 2^(n-1),每种棍子的数量为a[i]。任务是计算可以组成的三角形数量。根据三角形的性质,任意两边之和必须大于第三边。该问题可以通过贪心算法高效解决,通过合理选择棍子组合来最大化三角形的数量。 ... [详细]
  • Java集合框架特性详解与开发实践笔记
    Java集合框架特性详解与开发实践笔记 ... [详细]
  • 【并发编程】全面解析 Java 内存模型,一篇文章带你彻底掌握
    本文深入解析了 Java 内存模型(JMM),从基础概念到高级特性进行全面讲解,帮助读者彻底掌握 JMM 的核心原理和应用技巧。通过详细分析内存可见性、原子性和有序性等问题,结合实际代码示例,使开发者能够更好地理解和优化多线程并发程序。 ... [详细]
  • 本文详细探讨了Zebra路由软件中的线程机制及其实际应用。通过对Zebra线程模型的深入分析,揭示了其在高效处理网络路由任务中的关键作用。文章还介绍了线程同步与通信机制,以及如何通过优化线程管理提升系统性能。此外,结合具体应用场景,展示了Zebra线程机制在复杂网络环境下的优势和灵活性。 ... [详细]
  • 在处理大图片时,PHP 常常会遇到内存溢出的问题。为了避免这种情况,建议避免使用 `setImageBitmap`、`setImageResource` 或 `BitmapFactory.decodeResource` 等方法直接加载大图。这些函数在处理大图片时会消耗大量内存,导致应用崩溃。推荐采用分块处理、图像压缩和缓存机制等策略,以优化内存使用并提高处理效率。此外,可以考虑使用第三方库如 ImageMagick 或 GD 库来处理大图片,这些库提供了更高效的内存管理和图像处理功能。 ... [详细]
  • 利用 Spring BeanUtils 实现 JavaBean 的深度克隆与属性复制 ... [详细]
  • 优化后的标题:深入解析09版Jedis客户端
    深入解析09版Jedis客户端,本文将详细介绍如何在Java项目中正确配置Jedis以操作Redis。首先,确保项目的JDK版本和编译器设置正确。接着,通过Maven或Gradle导入必要的依赖项,如 `redis.clients:jedis`。此外,文章还将探讨Jedis连接池的配置与优化,以及常见问题的解决方案,帮助开发者高效使用Jedis进行Redis操作。 ... [详细]
  • Java 模式原型在游戏服务器架构中的应用与优化 ... [详细]
  • 在2021-2022 ACM集训队月度编程挑战赛第二轮中,题目“最大值与最小值的选择”要求参赛者处理一个包含n个元素的数组,并给定一个整数k。任务是通过选择特定的子数组,计算并返回这些子数组的最大值和最小值之间的差值。该问题考验了选手对数组操作和优化算法的理解与应用能力。 ... [详细]
  • 本次发布的Qt音乐播放器2.0版本在用户界面方面进行了细致优化,提升了整体的视觉效果和用户体验。尽管核心功能与1.0版本保持一致,但界面的改进使得操作更加直观便捷,为用户带来了更为流畅的使用体验。此外,我们还对部分细节进行了微调,以确保软件的稳定性和性能得到进一步提升。 ... [详细]
  • 浅析Java泛型及其应用
    Java泛型是自JDK 5引入的一项重要特性,旨在增强代码的类型安全性和复用性。通过泛型,开发人员可以在编译阶段进行类型检查,有效避免运行时的类型转换错误。本文将探讨Java泛型的基本概念、实现机制及其在实际开发中的应用场景,帮助读者深入理解并灵活运用这一强大工具。 ... [详细]
  • 如何使用 net.sf.extjwnl.data.Word 类及其代码示例详解 ... [详细]
author-avatar
卢启红
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有