Ruby silverの模擬問題を抜粋して解説をしていきます。
下記コードの出力を4択から選ぶ問題になっています。
a = Time.now
b = Time.mktime(2017, 6, 1)
a <=> b
1.現在時刻と指定した地方時を比較し、1、0、-1のいずれかを返す。
2.現在時刻と指定した地方時の差を返す。
3.現在時刻のフォーマットを、指定した地方時のフォーマットに変換して返す。
4.現在時刻と指定した地方時を比較し、時刻が等しい場合にtrueを返を返す。
1行目は'Time.nowを使って現在の時刻を取得して変数aに代入します'
a = Time.now
2行目は'Time.mktime(2017, 6, 1)が2017年6月1日を表すTimeオブジェクトを作成して変数bに代入します'
b = Time.mktime(2017, 6, 1)
3行目は'<=>'の演算子をしようして'a'と'b'を比較するようにしています。
'<=>'は、左側の値が右側の値より小さい場合は-1,
等しい場合は0,
大きい場合は1を返すようになっています。
a <=> b
したがって、このコードを実行すると現在の時刻('a')と指定した時刻('b')を比較して、その結果が返されます。
-1の場合は過去の時刻,0の場合は同時刻,1の場合は未来の時刻になります。
結果として、今回の問題は選択肢1が正解になります。