当前位置:  开发笔记 > IOS > 正文

如何更改数组中struct的值?

如何解决《如何更改数组中struct的值?》经验,为你挑选了1个好方法。

我正在为我的项目使用swift.

我有一个名为的结构数组Instrument.后来我创建了一个Instrument从数组返回特定的函数.然后我想在其中一个属性上更改值,但此更改不会反映在数组中.

我需要让这个数组包含内部元素的所有更改.您认为这里的最佳做法是什么?

改变Instrumentstructclass.

以某种方式重写Instrument从数组返回的函数.

现在我使用这个功能:

func instrument(for identifier: String) -> Instrument? {
  if let instrument = instruments.filter({ $0.identifier == identifier }).first {
    return instrument
  }
  return nil
}

我开始与结构,因为迅速被称为是语言结构,我想学习时使用structclass.

谢谢



1> Owen..:

使用struct Instrument数组,您可以获取具有特定标识符的Instrument的索引,并使用它来访问和修改Instrument的属性.

struct Instrument {
    let identifier: String
    var value: Int
}

var instruments = [
    Instrument(identifier: "alpha", value: 3),
    Instrument(identifier: "beta", value: 9),
]

if let index = instruments.index(where: { $0.identifier == "alpha" }) {
    instruments[index].value *= 2
}

print(instruments) // [Instrument(identifier: "alpha", value: 6), Instrument(identifier: "beta", value: 9)]

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有