@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.