Maison  >  Article  >  Java  >  Description des classes de date courantes en Java

Description des classes de date courantes en Java

伊谢尔伦
伊谢尔伦original
2017-04-29 13:01:481659parcourir

Il existe trois classes de date couramment utilisées, la classe Date, la classe Calendar (calendrier) et la classe de conversion de format de date (DateFormat)

La plupart des méthodes de la classe Date sont obsolètes, et généralement seul le constructeur est méthode utilisée pour obtenir l’heure actuelle du système.

public class DateDemo {  
    public static void main(String[] args) {  
        Date date = new Date();  
        System.out.println(date);  
    }  
}

Le résultat est l'heure actuelle du système : vendredi 10 mars 16:50:37 CST 2017
Nous pouvons voir que nous ne sommes pas habitués à ce format d'heure, nous affichons donc l'heure Le format de sortie doit être converti. À ce stade, nous devons utiliser la classe de conversion de format de date DateFormat.

public class FormatDemo {  
    public static void main(String[] args) {  
    Date d=new Date();  
    System.out.println(d);  
    Format f=new SimpleDateFormat("yyyy-MM-dd hh-mm-ss");  
    String s=f.format(d);  
    System.out.println(s);  
    }  
}

L'heure de sortie à ce moment est : 2017-03-10 04-54-06

Cela semble très confortable.

Calendrier

La classe Calendar est une classe abstraite qui associe un moment spécifique à un ensemble de champs de calendrier tels que ANNÉE, MOIS, DAY_OF_MONTH , HOUR, etc. Des méthodes sont fournies pour convertir et manipuler les champs du calendrier (comme obtenir la date de la semaine prochaine).

Les champs du calendrier peuvent être modifiés à l'aide de trois méthodes : set(), add() et roll().

1, set(f, value) modifie le champ du calendrier f en valeur.

2, add(f, delta) ajoute delta au champ f.

3, roll(f, delta) ajoute delta au champ f, mais ne modifie pas le champ plus grand.

public class Test {  
    public static void main(String[] args) {  
    Calendar c=new GregorianCalendar();  
    c.set(Calendar.DAY_OF_MONTH,1);  
    System.out.println("输出的是本月第一天");  
    System.out.println((c.get(Calendar.MARCH)+1)+"月的"+c.get(Calendar.DAY_OF_MONTH)+"号");  
    c.roll(Calendar.DAY_OF_MONTH,-1);  
    System.out.println("输出的是本月最后一天");  
    System.out.println((c.get(Calendar.MARCH)+1)+"月的"+c.get(Calendar.DAY_OF_MONTH)+"号");  
    }  
}

Le résultat de sortie est :

La sortie est le premier jour de ce mois

Le 1er mars

La sortie est le dernier jour de ce mois Un jour

Le 31 mars

Lors du fonctionnement de la méthode Roll, après que le nombre de jours du premier jour soit décrémenté de un, il revient directement au dernier jour de ce mois. La date change dans un cycle au cours de ce mois. Le mois ne sera pas modifié, c'est-à-dire que les champs plus grands ne seront pas modifiés.

Comparez la méthode d'ajout :

public class Test {  
    public static void main(String[] args) {  
    Calendar c=new GregorianCalendar();  
    c.set(Calendar.DAY_OF_MONTH,1);  
    System.out.println("输出的是本月第一天");  
    System.out.println((c.get(Calendar.MARCH)+1)+"月的"+c.get(Calendar.DAY_OF_MONTH)+"号");  
    c.add(Calendar.DAY_OF_MONTH,-1);  
    System.out.println("输出的是上个月最后一天");  
    System.out.println((c.get(Calendar.MARCH)+1)+"月的"+c.get(Calendar.DAY_OF_MONTH)+"号");  
    }  
}

Le résultat de sortie est :

La sortie est le premier jour de ce mois

Le 1er mars

La sortie est le dernier jour de ce mois

Le 28 février

On peut voir qu'après en avoir soustrait un au 1er mars, le mois automatique passe automatiquement à février lune. C'est la différence entre la méthode roll et la méthode ad.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn