古いSwiftへの2つの答えSwift 3. 私の答えこの質問 しかし、質問はNSDate
ではなくDate
を明確に要求するため、更新するのは簡単ではありません。そのため、回答を更新できる新しいバージョンの質問を作成しています。
質問
このようなDate
インスタンスで開始する場合
let someDate = Date()
それをどのように整数に変換しますか?
関連するが異なる
これらの質問はさまざまなことを求めています。
Date
からInt
// using current date and time as an example
let someDate = Date()
// convert Date to TimeInterval (typealias for Double)
let timeInterval = someDate.timeIntervalSince1970
// convert to Integer
let myInt = Int(timeInterval)
Double
からInt
への変換を行うと、ミリ秒が失われます。ミリ秒が必要な場合は、Int
に変換する前に1000倍してください。
Int
からDate
完全を期すために逆を含む。
// convert Int to Double
let timeInterval = Double(myInt)
// create NSDate from Double (NSTimeInterval)
let myNSDate = Date(timeIntervalSince1970: timeInterval)
一貫性があれば、timeIntervalSince1970
の代わりにtimeIntervalSinceReferenceDate
を使用することもできます。これは、時間間隔が秒単位であることを前提としています。 Javaはミリ秒を使用します。
NSDate
を含む構文については、 この回答 を参照してください。