Как проще всего узнать текущий день недели в Android?
114
Используйте Calendar
класс Java .
Calendar calendar = Calendar.getInstance();
int day = calendar.get(Calendar.DAY_OF_WEEK);
switch (day) {
case Calendar.SUNDAY:
// Current day is Sunday
break;
case Calendar.MONDAY:
// Current day is Monday
break;
case Calendar.TUESDAY:
// etc.
break;
}
Результат (на сегодня):
ОБНОВЛЕНИЕ: java8
Результат (на сегодня):
источник
или
Точно так же, как в Java, в Android ничего особенного.
источник
Java 8
datetime
API
сделала это намного проще:Вернет вам название дня как
String
источник
источник
Если вы вообще не хотите использовать класс Calendar, вы можете использовать это
т.е. результат,
источник
Вот мой простой способ получить текущий день
источник
String[] days = {"?", "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
int day = calendar.get(Calendar.DAY_OF_WEEK) - 1;
Используя оба метода, вы легко обнаружите, что в последние семь дней вы не используете (currentdaynumber + 7-1)% 7, (currentdaynumber + 7-2)% 7 ..... до 6
источник
вы можете использовать этот код для Kotlin, который вы будете использовать класс календаря из java в Kotlin
источник
На всякий случай, если вы когда-нибудь захотите сделать это не на Android, полезно подумать о том, в какой день, поскольку не все устройства отмечают свой календарь по местному времени.
Начиная с Java 8:
источник
Поскольку DAY_OF_WEEK в классе GregorianCalender является статическим полем, вы можете получить к нему доступ напрямую как дураки.
источник