J'essaie de trouver le meilleur moyen de déterminer si une date donnée est 10 jours ou moins de la fin du mois. Je suis en train de construire des fonctionnalités qui afficheront un message si le mois est presque fini. Merci!Déterminer si le mois est presque fini dans Groovy
2
A
Répondre
2
Une alternative serait quelque chose comme:
def isEndOfMonth() {
Calendar.instance.with {
it[ DAY_OF_MONTH ] + 10 > getActualMaximum(DAY_OF_MONTH)
}
}
1
Qu'en est-
def date = new Date();
// ten days is in the next month so we are near end of month
if ((date + 10).month != date.month) {
// write message
}
Je suis un novice groovy donc je peut avoir fait une erreur avec la syntaxe mais le concept devrait être ok.
+0
Merci Don. Je ne pensais même pas à la méthode plus étant un opérateur overide. –
0
suggestion de Michael Rutherfurd groovyfied:
Date.metaClass.isEndOfMonth = {
(delegate+10).month != delegate.month
}
new Date().isEndOfMonth()
0
La bibliothèque Joda Time est très intéressante. L'auteur de l'heure de Joda est le chef de spécification de JSR-310 qui vise à fournir une alternative Java 7 aux «anciennes» classes Calendrier/Date.
import org.joda.time.*
@Grapes([
@Grab(group='joda-time', module='joda-time', version='1.6.2')
])
DateTime now = new DateTime()
DateTime monthEnd = now.monthOfYear().roundCeilingCopy()
Days tendays = Days.days(10)
if (Days.daysBetween(now, monthEnd).isLessThan(tendays)) {
println "Month is nearly over"
}
else {
println "Plenty of time left"
}
1
Consultez le Groovy Date Page.
boolean isLessThanNDaysFromEndOfMonth(Date d, int n) {
return (d + n).month != d.month
}
Questions connexes
- 1. Déterminer si un mois contient des entrées
- 2. Déterminer si le module Magento est activé
- 3. Déterminer si aujourd'hui est le lundi
- 4. déterminer si uiview est affiché
- 5. Déterminer si DateTime est dans une plage de dates donnée
- 6. Déterminer si l'utilisateur est connecté
- 7. Groovy/Grails classe date - obtenir le jour du mois
- 8. Déterminer si une année est un saut et si une date est valide dans Blackberry
- 9. Déterminer si le thread courant est faible priorité d'E/S
- 10. Vérifier si SendAsync a fini d'envoyer
- 11. Comment déterminer si nous sommes dans la première semaine du mois en cours
- 12. Comment déterminer si XML est bien formé?
- 13. Déterminer si l'application est WinForms ou WebForms
- 14. Déterminer si Flash OCX est installé?
- 15. Déterminer si l'utilisateur est en ligne
- 16. Comment déterminer si le canal distant est déjà enregistré
- 17. Déterminer si l'erreur $ .ajax est un délai
- 18. Déterminer si un type est statique
- 19. Notifier le consommateur quand le producteur est fini
- 20. Déterminer mois -3 et +3 en JavaScript
- 21. objective-c déterminer si le paramètre est un objet
- 22. Comment déterminer si une fonction est vide
- 23. Comment déterminer si un gif est animé?
- 24. Comment déterminer si une demande est le résultat d'une publication?
- 25. Déterminer si un répertoire est inscriptible
- 26. Comment déterminer si un pthread est actif?
- 27. Comment déterminer si NSString est vide
- 28. déterminer si une autre application est occupée
- 29. Déterminer si une touche est actuellement pressée
- 30. déterminer si dropdownlist est sélectionné ou non
Je suppose que je pouvais faire: def c = new GregorianCalendar() si (c.get (Calendar.DAY_OF_MONTH)> 20) ' – RyanLynch
Calendar.instance [Calendar.DAY_OF_MONTH]> 20' serait plus Groovy; -) –