Java 如何取整整数除法的结果? |
您所在的位置:网站首页 › pandas取整 › Java 如何取整整数除法的结果? |
大佬教程收集整理的这篇文章主要介绍了Java 如何取整整数除法的结果?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如何解决Java 如何取整整数除法的结果??
开发过程中遇到Java 如何取整整数除法的结果?的问题如何解决?下面主要结合日常开发的经验,给出你关于Java 如何取整整数除法的结果?的解决方法建议,希望对你解决Java 如何取整整数除法的结果?有所启发或帮助;
Ian提供的整数数学解决方案很好,但存在整数溢出错误。假设变量为all int,则解决方案可以重写为使用long数学运算并避免错误: int PageCount = (-1L + records + recordsPerPagE) / recordsPerPage; 如果records为long,则错误仍然存在。模数解决方案没有错误。 对于C#,解决方案是将值转换为双精度值(因为Math.Ceiling需要双精度值): int nPages = (int)[email protected]((doublE)nItems / (doublE)nItemsP在Java中,你应该对Math.ceil()执行相同的操作。 在cpu级别,转换为浮点数和返回浮点数似乎是对时间的巨大浪费。 伊恩·尼尔森(Ian Nelson)的解决方案: int PageCount = (records + recordsPerPage - 1) / recordsPerPage;可以简化为: int PageCount = (records - 1) / recordsPerPage + 1;AFAICS,它没有Brandon DuRette指出的溢出错误,并且由于它只使用一次,因此,如果它来自昂贵的函数来从配置文件中获取值,则不需要专门存储recordsPerPage。的东西。 也就是说,如果config.fetch_value使用数据库查找或其他方法,则这可能效率不高: int PageCount = (records + config.fetch_value('records per page') - 1) / config.fetch_value('records per page');这将创建一个你实际上不需要的变量,该变量可能具有(较小的)内存含义,并且键入过多: int recordsPerPage = config.fetch_value('records per page') int PageCount = (records + recordsPerPage - 1) / recordsPerPage;这是全部一行,并且仅提取一次数据: int PageCount = (records - 1) / config.fetch_value('records per page') + 1;一个优雅的解决方案: int PageCount = (records + recordsPerPage - 1) / recordsPerPage; 解决方法我在考虑使用C#或Java之类的语言时如何显示分页控件。 如果我有x个项目想要以每页y个块的形式显示,那么需要多少个页面? 大佬总结以上是大佬教程为你收集整理的Java 如何取整整数除法的结果?全部内容,希望文章能够帮你解决Java 如何取整整数除法的结果?所遇到的程序开发问题。 如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |