簡體   English   中英

需要幫助按 Swift 中的時間戳對結構進行排序

[英]Need help sorting a Struct by Timestamp in Swift

嘗試按時間戳對 Swift 結構進行排序,並且確實需要一些幫助。 我的結構定義如下:

struct TripDetails {

  let tripDepartureTime: String
  var myLocations: [GeoPoint]
  var myDates: [Timestamp]

}

在變量 todaysTrip 中是以下數據:

TripDetails(
tripDepartureTime: "2020-05-23 22:56:52 +0000", 

myLocations: [<FIRGeoPoint: (21.561333, -80.033536)>, 
<FIRGeoPoint: (22.561288, -80.023592)>, 
<FIRGeoPoint: (20.561265, -80.063439)>], 

myDates: [<FIRTimestamp: seconds=1590274922 nanoseconds=795317000>, 
<FIRTimestamp: seconds=1590274802 nanoseconds=683353000>, 
<FIRTimestamp: seconds=1590274682 nanoseconds=679319000>])

我想根據 myDates 時間戳的時間按降序對特定行程的所有字段進行排序。 做了一段時間,無法弄清楚我做錯了什么。 我在 StackOverflow 上看到了幾篇關於這個問題的帖子,但它們似乎都不適用於我的情況。

建議您更改 model 的結構:

struct TripDetails {
    struct LocationInfo {
        var location: GeoPoint
        var timestamp: TimeStamp
    }

    let tripDepartureTime: String
    var locations: [LocationInfo]

} 

排序:

var tripDetails = ... // Getting model
tripDetails.locations.sort(by: { $0.timestamp.seconds > $1.timestamp.seconds })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM