This week's book giveaway is in the Servlets forum.
We're giving away four copies of Murach's Java Servlets and JSP and have Joel Murach on-line!
See this thread for details.
The moose likes Beginning Java and the fly likes How To examine minutes parameter in Time class? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "How To examine minutes parameter in Time class?" Watch "How To examine minutes parameter in Time class?" New topic
Author

How To examine minutes parameter in Time class?

Ameer Alqallaf
Greenhorn

Joined: May 24, 2011
Posts: 6
Hi

I am trying to define a class called time which will hold integers for hours and minutes.
my problem now is: how to examine the minutes parameter...if it is greater than 59, then how to transfer the multiples of 60
over to the hours portion of the Time object. (e.g., new Time(10,93) results in 11 hours and 33
minutes).

any idea how can I do this?
Pankaj Kumarkk
Ranch Hand

Joined: Apr 17, 2011
Posts: 108
Hi,
I think this design is flawed. You should not have constructor take responsibility for such conversion. Ideally the class's contract should specify it to be clients responsibility and you should have validation logic to ensure that data in min and hrs are within allowable limits.

If at all you want then you can expose a utility method which can handle such conversion. e.g int evaluateHours(int minutes). Similarly for hours.

Hope it helps.

Thanks,
Satish
Rob Spoor
Sheriff

Joined: Oct 27, 2005
Posts: 19651
    
  18

There are two ways to handle this issue:
1) throw an IllegalArgumentException if the minutes value is < 0 or >= 60.
2) use / to get the number of full hours from the minutes, which you add to the given number of hours, and use % to cut get rid of these hours.

Personally, I'd go for option 1. I see it as an error to create a time object with 10 hours and 93 minutes.


SCJP 1.4 - SCJP 6 - SCWCD 5 - OCEEJBD 6
How To Ask Questions How To Answer Questions
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
 
subject: How To examine minutes parameter in Time class?
 
Similar Threads
how to compute time?
Gregorian Calendar and time zones
Constructor
how to return multiple values in java?
Trinidad Myfaces