Skip to content

Commit

Permalink
Use Kotlin way in addTimeIntervals
Browse files Browse the repository at this point in the history
  • Loading branch information
zaypen committed Jan 17, 2018
1 parent 2e7ef9f commit e4b71a4
Showing 1 changed file with 8 additions and 9 deletions.
17 changes: 8 additions & 9 deletions src/iii_conventions/MyDateUtil.kt
Original file line number Diff line number Diff line change
@@ -5,13 +5,12 @@ import java.util.*

fun MyDate.nextDay() = addTimeIntervals(DAY, 1)

fun MyDate.addTimeIntervals(timeInterval: TimeInterval, number: Int): MyDate {
val c = Calendar.getInstance()
c.set(year, month, dayOfMonth)
when (timeInterval) {
TimeInterval.DAY -> c.add(Calendar.DAY_OF_MONTH, number)
TimeInterval.WEEK -> c.add(Calendar.WEEK_OF_MONTH, number)
TimeInterval.YEAR -> c.add(Calendar.YEAR, number)
}
return MyDate(c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DATE))
fun MyDate.addTimeIntervals(timeInterval: TimeInterval, number: Int) = Calendar.getInstance().run {
set(year, month, dayOfMonth)
add(when (timeInterval) {
TimeInterval.DAY -> Calendar.DAY_OF_MONTH
TimeInterval.WEEK -> Calendar.WEEK_OF_MONTH
TimeInterval.YEAR -> Calendar.YEAR
}, number)
MyDate(get(Calendar.YEAR), get(Calendar.MONTH), get(Calendar.DATE))
}

0 comments on commit e4b71a4

Please sign in to comment.