如何在java中计算最后一页的页码

tjvv9vkg  于 2021-07-12  发布在  Java
关注(0)|答案(2)|浏览(693)

我正在为我的webapp实现分页,我正在利用hibernate而不是mysql。每次检索最后一个页码的代码是:int lastpagenumber=(int)(math.ceil(countresults/pagesize));
countresults=148,pagesize为10
很明显,它叫了14.8,但最后的页码现在是14而不是15。有点不对劲,我猜这和int-cast有关,如何修复它并检索到正确的答案?15...
剩下的代码是

int pageSize = 10;
    long countResults;
    int lastPageNumber;
swvgeqrz

swvgeqrz1#

似乎是这样改变数据类型的:

double pageSize = 10;
    double countResults;
    double lastPageNumber;

解决了我的问题,现在的结果是正确的,现在我想知道我是否浪费资源使用一个双重或这是我唯一能做的事情。

ujv3wf0j

ujv3wf0j2#

public class MyClass {
    public static void main(String args[]) {

    int Test1;
    Test1 = (int) Math.ceil(14.8);
    System.out.println("Test1 ---> " + Test1); // Test1 ---> 15

    System.out.println("Test2 ---> " + Math.ceil(148 / 10)); // Test2 ---> 14.0

    double Test3 = Math.ceil(148L / 10.0);
    System.out.println("Test3 ---> " + Test3); // Test3 ---> 15.0

    }
}

相关问题