Как рассчитать номер последней страницы в Java

#java

Вопрос:

Я внедряю разбиение на страницы для своего веб-приложения, я использую hibernate над mysql. Мой код для получения номера последней страницы: int lastPageNumber = (int) (Математический код(количество результатов / Размер страницы));

Количество результатов будет равно 148, а размер страницы-10

Очевидно, что он составляет 14,8, но lastPageNumber теперь 14 вместо 15. Что-то не так, и я предполагаю, что это связано с приведением int, как это можно исправить и получить правильный ответ? 15…

Остальная часть кода такова

     int pageSize = 10;
    long countResults;
    int lastPageNumber;
 

Комментарии:

1. Не могли бы вы дать полный пример кода, пожалуйста?

Ответ №1:

похоже, что таким образом изменяются типы данных:

     double pageSize = 10;
    double countResults;
    double lastPageNumber;
 

решил свою проблему, и результат теперь правильный, теперь мне интересно, трачу ли я ресурсы впустую, используя двойника, или это единственное, что я могу сделать.

Ответ №2:

 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
    
    }
}
 

Комментарии:

1. Единственное, чего я не могу понять, это Тест2