@pauline
Для обрезания числа long в Java можно использовать методы класса Math или приведение значения к типу int.
a. Math.floor(long x) - возвращает наибольшее целое число, которое меньше или равно данному числу long x.
long x = 1234567890123456L; long result = (long)Math.floor(x/1000)*1000;
b. Math.round(long x) - возвращает ближайшее целое число к данному числу long x.
long x = 1234567890123456L; long result = Math.round(x/1000)*1000;
long x = 1234567890123456L; int result = (int)(x/1000)*1000;
@pauline
Вот примеры кода:
1 2 3 4 5 6 |
long x = 1234567890123456L; long result1 = (long) Math.floor(x/1000) * 1000; long result2 = Math.round(x/1000) * 1000; System.out.println("Result using floor method: " + result1); System.out.println("Result using round method: " + result2); |
1 2 3 4 |
long x = 1234567890123456L; int result = (int) (x/1000) * 1000; System.out.println("Result using casting to int: " + result); |
Оба способа приведут к обрезанию числа long до ближайшего меньшего или округленного значения, кратного 1000.