Мне нужно вывести числительное в виде строки в android (первый, второй, третий, четвертый и тд), а обьектов может быть безграничное количество (вполне возможен как сто первый, так и двести оддинадцатый. Как это реализовать?
Если я правильно тебя понял то вот примерный класс который можно создать.
public class ConvertNumber {
public static final String[] units = {"", "Первый", "Второй", "Третий", "Четвёртый", "Пятый", "Шестой", "Седьмой", "Восьмой",
"Девятый", "Десятый", "Одиннадцатый", "Двенадцатый", "Тринадцатый", "Четырнадцатый",
"Пятнадцатый", "Шестнадцатый", "Семьнадцатый", "Восемнадцатый", "Девятнадцатый"};
public static final String[] tens = {"", "", "Двадцать", "Тридцать", "Сорок",
"Пятьдесят", "Шестьдесят", "Семьдесят", "Восемьдесят", "Девяносто"};
public static final String[] sotki = {"", "Сто", "Двесте", "Триста", "Четыреста", "Пятьсот",
"Шестьсот", "Семьсот", "Восемьсот", "Девятьсот"};
public static String convert(final int n) {
if (n < 0) {
return "Минус " + convert(-n);
}
if (n < 20) {
return units[n];
}
if (n < 100) {
return tens[n / 10] + " " + units[n % 10];
}
if (n < 1000) {
return sotki[n / 100] + " " + convert(n % 100);
}
if (n < 1000000) {
if (n / 1000 == 1) {
return "Одна Тысяча " + convert(n % 1000);
} else if (n / 1000 < 5 && n / 1000 >= 9) {
return convert(n / 1000) + " Тысячи " + convert(n % 1000);
} else {
return convert(n / 1000) + " Тысячный " + convert(n % 1000);
}
}
if (n < 10000000) {
if (n / 1000000 == 1) {
return "Один Миллион " + convert(n % 100000);
} else {
return convert(n / 100000) + " Миллионов " + convert(n % 100000);
}
} else {
if (n / 10000000 == 1) {
return "Один Триллион " + convert(n % 10000000);
} else {
return convert(n / 10000000) + " Триллион " + convert(n % 10000000);
}
}
}
}
А в Activity найти TextView и бахнуть туда текст
@Override
protected void onCreate(Bundle savedInstanceState) {
findViewById(R.id.textView).setText(ConvertNumber.convert(871_123));
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть сервер, который реализует в себе MQ Пытаюсь подключиться к нему, используя jms, но видимо что-то в настройке упустилВыдает ошибку:
Есть горизонтальный сайт, и если у пользователя выбрано масштабирование в windows то он едет вниз, можно ли запретить масштабировать сайт несмотря...