我的问题是,在下面的代码中,在选项2中,如果用户Store = 1并且项目明细用新明细覆盖了项目[0]。我希望它存储在item [7]中,而不要覆盖当前信息。该项目位于另一个类的构造方法中。请参阅我如何解决此问题并改进我的代码。
func application(_ application: UIApplication,
didReceiveRemoteNotification userInfo: [AnyHashable : Any],
fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
// completionHandler(.newData) // <- Comment it out
}
//constructor class
答案 0 :(得分:2)
您需要在oreder中做您想做的两件事。
如果您决定保留阵列。您需要初始化足够大的数组,并保留最后添加的项的索引。同样,您需要使用带有退出条件的while(true)来使该索引有意义。
答案 1 :(得分:1)
如果要在特定索引处插入新元素,则使用List
对象或其他集合比使用数组基元要简单。
通过List.add
函数,您可以在特定位置插入项目。