2016-09-04 3 views
-4

эй, я пытался получить день недели, используя класс Calendar в java, но на самом деле это не работает. Обычно он отключается днем ​​или просто отключается. Кроме того, 2016 год - это високосный год, знает ли это java? До сих пор вот мой кодИспользование класса календаря в java для получения ДНЯ НЕДЕЛИ?

import java.util.Calendar; 

public class Main { 

    public static void main(String[] args) { 


     Calendar cal= Calendar.getInstance(); 
     cal.set(2013 - 1900, 2, 27); 
     switch (cal.get(Calendar.DAY_OF_WEEK)) { 
     case 1: 
      System.out.println("Sun"); 
      break; 
     case 2: 
      System.out.println("Mon"); 
      break; 
     case 3: 
      System.out.println("Tues"); 
      break; 
     case 4: 
      System.out.println("Weds"); 
      break; 
     case 5: 
      System.out.println("Thurs"); 
      break; 
     case 6: 
      System.out.println("Fri"); 
      break; 
     case 7: 
      System.out.println("Sat"); 
      break; 
     } 

    } 
} 

Спасибо Просьба помочь

+1

Вместо этого вы должны использовать новый API 'java.time'. Это намного проще в использовании и имеет меньше сюрпризов, чем старый API. – Kayaman

+2

Попробовал ли, скажем, распечатать значение 'cal', чтобы узнать, правильны ли ваши предположения? Вы внимательно читали Javadoc для классов «Календарь» и «GregorianCalendar»? Это фундаментальные шаги по устранению неполадок, которые вы должны научиться выполнять перед тем, как обратиться за помощью. Основное любопытство и готовность к эксперименту - основа того, чтобы быть разработчиком программного обеспечения. –

ответ

0

java.time

Избегайте беспокойных старые классы даты и времени. Теперь вытесняется классами java.time. Здесь перечислены перечисления DayOfWeek и его getDisplayName. Да.

Метод DayOfWeek::getDisplayName переводит имя дня на любой человеческий язык, указанный Locale, такой как Locale.US или Locale.CANADA_FRENCH.

Locale определяет (а) человеческий язык для перевода имени дня, названия месяца и т. Д. И (b) культурных норм, решающих вопросы сокращения, капитализации, пунктуации и т. Д.

String output = LocalDate.of(2016 , 2 , 27).getDayOfWeek().getDisplayName(TextStyle.SHORT_STANDALONE , Locale.CANADA_FRENCH); 
Смежные вопросы