java - 在 Java 中将除法的 double 结果转换为 int

标签 java casting

我想使用需要int的方法。这个int由可能被解算为double的除法确定。我需要尽可能简洁和简短地执行此操作,我想知道我是否可以算出该方法会将 double 直接转换为 int ,这是否意味着单个不进行四舍五入的截断。

我是否必须使用数学静态方法?
这是否会导致 subList 中的非 int 参数条目出现错误?
有人可以对此提供任何指导吗?

List<Integer> b = null;
List<Integer> c = null;
int size = a.size();

b.addAll(a.subList(0, size / 2)); // To hold the first half
c.addAll(a.subList(size / 2, size)); // To hold the second half [and excess]

预先感谢您的帮助。

最佳答案

它将把 double 型转换为整数并且不会对其进行四舍五入,只是忽略“.”之后的所有内容

所以如果 9.8/2 的除法是 4.9 那么你会得到 4

int x = 9.8/2;

您不需要使用 Math 静态方法进行除法,并且您提供的代码不会出现错误

总而言之,您只需运行代码并查看结果是否如您所愿。

b.addAll(a.subList(0, size / 2));

运行应该没有问题

关于java - 在 Java 中将除法的 double 结果转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18230470/

相关文章:

c# - 隐式委托(delegate)转换

c++ - 使用 dlsym 访问类符号

c++ - 何时以及如何允许转换为 char 指针?

java - akka actor 中私有(private)方法的 powermockito

java - Socket.io 类异常

java - 调用方法时有关参数的错误

c++ - 指向 const int 指针的 Const 指针强制转换为指向 int 指针的 const 指针

java - 用于过滤 SOAP 消息的 JXPath

java - while循环不循环

c - C中链表声明的区别