Как склонять слово «день» по числам?

151
15 сентября 2017, 19:39

Есть значение разницы двух дат в днях.
Как сделать форматирование в таком виде:

1 день, 2 дня, 3 дня, 4 дня, 5 дней, 20 дней и т.д.?

То бишь что бы менялось слова день и дня.

Answer 1

Как подсказали default locale:

public String GetDayAddition(int num)
{
    int preLastDigit = num % 100 / 10;
    if (preLastDigit == 1) 
    {
        return "дней";
    }
    switch (num % 10)
    {
        case 1:
            return "день";
        case 2:
        case 3:
        case 4:
            return "дня";
        default:
            return "дней";
    }
}

Источник

READ ALSO
Что нужно знать начинающему Junior'у в java? [требует правки]

Что нужно знать начинающему Junior'у в java? [требует правки]

Добрый день, хотелось бы спросить, каких знаний требуют на рынке java для начинающего junior'a, что нужно знать из множества материала ?

166
Как поменять цвет подсказок в eclipse

Как поменять цвет подсказок в eclipse

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

294
Java возврат строки в лямбда функции [требует правки]

Java возврат строки в лямбда функции [требует правки]

Что нужно сделать чтобы лямбда функция возвращала строку?

215