Java两整数相除向上取整

方法一:通过三目运算符 (简单移动)

java 复制代码
x / y + (x % y != 0 ? 1 : 0);

方法二:通过ceil函数(不推荐使用,涉及类型转换)

java 复制代码
 (int)Math.ceil((double)x/y);
 // 或者
 (int)Math.ceil(x * 1.0 /y);

方法三:特殊逻辑(非常巧妙)

java 复制代码
(x + y - 1) / y

方法三用起来是最凸显能里的,非常巧妙,并且看起来简洁美观。

关于原理,大家可自行搜素。

相关推荐
葵花楹8 分钟前
【JAVA课设】【游戏社交系统】
java·开发语言·游戏
kylezhao201911 分钟前
C# 文件的输入与输出(I/O)详解
java·算法·c#
千层冷面16 分钟前
数据库分库分表
java·数据库·mysql·oracle
赵谨言19 分钟前
Python串口的三相交流电机控制系统研究
大数据·开发语言·经验分享·python
民乐团扒谱机38 分钟前
【微实验】数模美赛备赛:多目标优化求解实战(MATLAB实现,以流水车间调度为例)
开发语言·数学建模·matlab·甘特图·遗传算法·多目标优化·优化模型
努力的小陈^O^1 小时前
问题:Spring循环依赖问题排查与解决
java·开发语言·前端
Ccjf酷儿1 小时前
C++语言程序设计 (郑莉)第十章 泛型程序设计与C++标准模板库
开发语言·c++
HehuaTang2 小时前
requests 调大并对齐 limits 提升POD高负载场景下性能
java·docker·kubernetes
FreeBuf_2 小时前
利用零宽度字符的隐形JavaScript混淆工具InvisibleJS浮出水面
开发语言·javascript·ecmascript
SuperherRo2 小时前
JAVA攻防-Shiro专题&key利用链&CB1链分析&入口点&调用链&执行地&Class加载
java·shiro·反序列化·cb1链