Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Time(private var actualHour: Int = 0, private var actualMinute: Int = 0, private var actualSecond: Int = 0){
- if(actualHour < 0) actualHour = 0
- if(actualMinute < 0) actualMinute = 0
- if(actualSecond < 0) actualSecond = 0
- println(s"time constructor: $this")
- def hour: Int = actualHour
- def hour_=(newHour:Int)
- {
- if(newHour < 0 || newHour > 60) throw new IllegalArgumentException("Bad arg")
- else actualHour = newHour
- }
- def minute: Int = actualMinute
- def minute_=(newMinute: Int)
- {
- if(newMinute < 0 || newMinute > 60) throw new IllegalArgumentException("Bad arg")
- else actualMinute = newMinute
- }
- def second: Int = actualSecond
- def second_=(newSecond:Int)
- {
- if(actualSecond < 0 || actualSecond > 60) throw new IllegalArgumentException("Bad arg")
- else actualSecond = newSecond
- }
- def before(time:Time):Boolean={
- this.actualHour < time.actualHour || this.actualHour == time.actualHour && this.actualMinute < time.actualMinute || this.actualHour == time.actualHour && this.actualMinute == time.actualMinute && this.actualSecond < time.actualSecond
- }
- def secondAfterMidnight:Int={
- actualSecond+actualMinute*60+actualHour*60*60
- }
- override def toString : String = s"$actualHour:$actualMinute:$actualSecond"
- }
- object Tester{
- def main(args: Array[String]) : Unit={
- var time = new Time
- var time1 = new Time(1)
- var time2 = new Time(1,29)
- var time3 = new Time(1,24,30)
- var time4 = new Time(0, 50, 12 )
- var time5 = new Time(1, 24, 18)
- var time6 = new Time(1, 24, 30)
- println(time )
- println(time1)
- println(time2)
- println(time3)
- println(time4)
- println(time5)
- println(time6)
- println(time.before(time1))
- println(time.before(time2))
- println(time.before(time3))
- println(time1.before(time4))
- println(time1.before(time5))
- println(time1.before(time6))
- println(time2.before(time3))
- println(time.secondAfterMidnight)
- println(time1.secondAfterMidnight)
- println(time6.secondAfterMidnight)
- println(time5.secondAfterMidnight)
- println(time4.secondAfterMidnight)
- println(time3)
- time3.hour_=(3)
- time3.minute_=(34)
- time3.second_=(27)
- println(time3)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement