【问题标题】:Is possible to add some padding into an Array?是否可以在数组中添加一些填充?
【发布时间】:2016-05-24 04:10:10
【问题描述】:

我在徘徊.....可以在数组中添加一些填充吗? 例如:如果我有类似var array:[NSDate] = [] 我可以在数组中放入什么样的数据作为填充,以获得一个由 5 个元素组成的数组,例如array[NSDate, padding, NSDate, padding , padding]

如果其中一些元素为 nil,我也想保持元素的位置和索引。

希望我说清楚了。

【问题讨论】:

  • 您可以制作 [NSDate?] 数组,然后可以将 nil 添加到数组中。不过,您必须选择解开数组中的值。
  • 如果你想在数组中保持位置,也许你应该考虑用字典来解决你的问题? [Int:NSDate]
  • 目前我解决了使用 [AnyObject] 并在必要时强制转换数据,但我想尝试使用 NSDictionary。谢谢你。

标签: ios swift nsarray padding


【解决方案1】:

回答其他用户的问题。

var array:[NSDate?] = [nil , nil, NSDate(), nil, nil]

[NSDate?] by Will M

var dictionary:[Int:NSDate?] = [0 : nil, 1 : nil, 2 : NSDate(), 3 : nil, 4 : nil]

[Int:NSDate?] by Dan Beaulieu

【讨论】:

    【解决方案2】:

    答案是可以的。如果您需要超过 5 个,您可以轻松地自动化该过程。 (您可以将其插入游乐场进行测试。)

    func addPaddingTo( var myArray:[AnyObject], intArray:[Int]) -> [AnyObject]{
    
        //we'll do some checking here to make sure the indices you are changing are in fact valid members of myArray.
    
        for number in intArray {
    
            if number < myArray.count {
    
                myArray[number] = "Padding"
            }
        }
    
        return myArray
    }
    
    
    var paddedArray = Array < AnyObject >( count: 5, repeatedValue: NSDate())
    
    paddedArray = addPaddingTo(paddedArray, intArray:[1,3,4])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-20
      • 1970-01-01
      • 2013-09-17
      • 1970-01-01
      • 2011-03-06
      相关资源
      最近更新 更多