如何获取数字小数部分的长度?

2024-03-22

如何找出小数的小数部分的长度或位数?

我可以看到一些方法,例如像这样的字符串:

public static int getNumberOfFractionDigits(Number number) {
    Double fractionPart = number.doubleValue() - number.longValue();
    return fractionPart.toString().length() - 2;
}

但是确定长度的最佳方法是什么?

如果我使用字符串,我可以想象一些问题,例如因为区域设置和数字格式可能因系统而异。有没有一个好的方法来计算它?也许没有迭代?

提前致谢。


我只是为此写了一个简单的方法,希望它可以帮助别人。

public static int getFractionDigitsCount(double d) {
    if (d >= 1) { //we only need the fraction digits
        d = d - (long) d;
    }
    if (d == 0) { //nothing to count
        return 0;
    }
    d *= 10; //shifts 1 digit to left
    int count = 1;
    while (d - (long) d != 0) { //keeps shifting until there are no more fractions
        d *= 10;
        count++;
    }
    return count;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取数字小数部分的长度? 的相关文章

  • Spring Boot 自动将 JSON 转换为控制器中的对象

    我有具有该依赖项的 Spring Boot 应用程序
  • Spring 配置:无法找到 Spring NamespaceHandler

    配置问题 无法找到 XML 模式名称空间的 Spring NamespaceHandler http www springframework org schema tx http www springframework org schema
  • 在 Java 1.7.0 下运行的 SQL-Server (MSSQL-JDBC 3.0) 中的日期列检索为过去 2 天

    当使用 SQLServer2008 从 SQLServer2008 检索 DATE 类型的列时 出现奇怪的效果在官方 Oracle JDK 1 7 0 下运行时 主机操作系统是Windows Server 2003 所有日期列均检索为two
  • 如何使用Gson序列化Optional类?

    我有一个具有以下属性的对象 private final String messageBundle private final List
  • IBM WebSphere MQ 2042 错误

    我有以下代码 int openOptions MQC MQOO INQUIRE MQC MQOO FAIL IF QUIESCING MQC MQOO INPUT SHARED 执行时 我收到错误 com ibm mq MQExceptio
  • Java 文档生成器为 Xml 字符串返回 null 文档

    I have tried all possible answers https stackoverflow com questions 33098082 passing xml string as document returning nu
  • 如何将 JMX 绑定到特定接口?

    我目前正在启动我的 Java VMcom sun management jmxremote 属性 以便我可以通过 JConsole 连接到它进行管理和监控 不幸的是 它监听机器上的所有接口 IP 地址 在我们的环境中 经常会出现多个 Jav
  • Java HTTPS客户端证书认证

    我对HTTPS SSL TLS我对客户在使用证书进行身份验证时到底应该提供什么内容感到有点困惑 我正在编写一个 Java 客户端 需要执行一个简单的操作POST数据到特定的URL 这部分工作正常 唯一的问题是它应该重新完成HTTPS The
  • 将 AOP 与 OSGI 结合使用的最佳解决方案?

    我正在使用 Equinox 因此 Equinox Aspect 项目似乎是理所当然的 但该项目似乎处于非活动状态 并且只有一页文档 让我最终悬而未决 除了那个项目之外 我没有看到在 OSGI 中使用 AOP 的很多选项 让我知道你们的想法以
  • 使用 google app-engine 跨浏览器/服务器重新启动会话持久性

    如何使会话在浏览器 服务器重新启动后持续存在 我正在使用谷歌应用程序引擎 每次重新启动浏览器和 或服务器时 我都会得到一个新的会话 ID String jSessionId this getThreadLocalRequest getSes
  • JUnit 5 中的参数化 beforeEach/beforeAll

    我想为一个小型的类似数据库的应用程序编写一个测试 此应用程序使用查询 查询应返回正确的结果 这在 JUnit 5 中很容易实现 比如 BeforeEach void before database prepareDatabase Test
  • 比较 Java 中的两个基元数组?

    我知道 Arrays deepEquals Object Object 但这不适用于原始类型 由于数组和自动装箱的限制 请参阅这个相关帖子 https stackoverflow com questions 517751 java gene
  • 面向 Clojure 用户的 Java

    我一直在断断续续地使用 Lisp 并且正在赶上 clojure clojure的好处是我可以自然地使用所有的java函数 而clojure的坏处也是我必须自然地了解java函数 例如 我不得不花一些时间 谷歌搜索 来查找 Java 中的平方
  • java中如何在另一个类中使用嵌套类?

    我有一些情况 我想在另一个类中使用另一个类的内部类 喜欢 public class ListData public static class MyData public String textSongName textArtistName
  • 为什么实现接口的类与 Java 中的接口不属于同一类型?

    I have out load output transactions columnHeaders dataFormat Where load定义为 public boolean load String outputfile List
  • 在idea ide中出现钻石运算符的编译错误

    我在尝试在idea ide中编译一些简单的源代码时收到此错误 java diamond operator is not supported in source 1 6 use source 7 or higher to enable dia
  • 在日志中显示 Spring 事务

    我为 spring 配置了事务支持 有什么方法可以记录事务以确保我正确设置所有内容 在日志中显示是查看正在发生的情况的好方法 in your log4j properties 对于替代记录器或 log4j 的 xml 格式 请查看文档 根据
  • JSP:已为此响应调用 getOutputStream()

    我正在使用此代码从 FTP 下载文件 我在 tomcat 日志中遇到异常 如下所示 我能够执行我的任务 但我的日志大小增加了很多 Code if file exists if file canRead IE6 SSL PDF Bug htt
  • 使用 libGDX 写入 Json

    我是 Json 和 libGDX 的新手 但我创建了一个简单的游戏 我想将玩家姓名及其分数存储在 Json 文件中 有没有办法做到这一点 我想创建一个 Json 文件Gdx files localStorage如果它不存在 如果存在 则向其
  • 如何从 netbeans 远程调试 jar

    我正在尝试弄清楚如何调试远程运行的 jar 这是我的场景 我的 jar 将从 VPS 运行 这个jar基本上运行一个服务器 对于游戏 所以它还连接到 mysql 数据库 我使用 3 个 bat 文件启动服务器 如下所示 设置 CLASSPA

随机推荐