What does this code mean?

actually i understand what its doing, i just don’t know HOW its done?
hours, mins, and secs are all variables with values- the following displays it in this format: hh:mm:ss

[FONT=&quot]myTime.text((hours<10)?“0”:"") + hours + ((mins<10)?":0":":") + mins + ((secs<10)?":0":":") + secs;[/FONT]

what exactly does the ? do? maybe thats where i don’t understand it…