4

Time.new が朝の場合は朝、午後の場合は午後を印刷するにはどうすればよいですか

00:00 - 12:00

12:00 - 00:00

4

4 に答える 4

11

このテストを頻繁に行う場合は、別の可能性があります (私はすぐにモンキー パッチを適用することを推奨しているわけではありません)。

class Time
  def morning?
    hour < 12
  end
  def afternoon?
    hour >= 12
  end
end

puts Time.now.morning? ? 'morning' : 'afternoon'
于 2012-04-17T08:53:58.160 に答える
7
(0..11).include?(Time.now.hour) ? 'morning' : 'afternoon'
于 2012-04-17T08:52:00.467 に答える
6

これはどう:

puts Time.now.hour < 12 ? 'morning' : 'afternoon'

これは次と同等です。

if Time.now.hour < 12
  puts 'morning'
else
  puts 'afternoon'
end
于 2012-04-17T08:49:49.057 に答える