从数组中的多个特定结构中提取一个属性

运气_金霸王

我的项目的一部分包括比较4个人的得分,找出最低得分并仅输出该球员的姓名。但是现在我需要它来支持多个名称,我想我已经成功完成了,但是它输出了这些播放器的整个Struct。例如:

["AppName.Player(name: "Bob", score: 2), AppName.Player(name: "John", score: 2)]

而我只想["Bob", "John"]或者最好是"Bob and John"

这是代码,winnerText控制显示的内容:

let players = [Player(name: "Bob", score: bobTotal), Player(name: "Ted", score: tedTotal), Player(name: "John", score: johnTotal), Player(name: "Rick", score: rickTotal)]
            
let minValue = players.min(by: { $0.score < $1.score })?.score ?? 0
let PlayersWithMinScore = players.filter { $0.score == minValue }
print(PlayersWithMinScore)

let winningPlayerIndex = players.indices.filter { players[$0].score == minValue }
print(winningPlayerIndex)
        
       
self.winnerText = "" + " won with " + "\(minValue)"
struct Player {
  let name: String
  let score: Int
}
jnpdx
PlayersWithMinScore.map { $0.name }

上面的代码将为您提供一系列名称。

从另一个答案中借用一个技巧(使用分隔符“,”并添加“和”将字符串数组连接到Swift中的最后一个元素):

extension BidirectionalCollection where Element: StringProtocol {
    var sentence: String {
        count <= 2 ?
            joined(separator: " and ") :
            dropLast().joined(separator: ", ") + ", and " + last!
    }
}

然后,您可以执行以下操作:

PlayersWithMinScore.map { $0.name }.sentence

为您提供逗号分隔的名称,然后在名称前加上“ and”(例如“ Bob and John”或“ Bob,Tom和” John”)。

旁注:在Swift中,变量名通常以小写字母开头-playersWithMinScorePlayersWithMinScore

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Spark中,如何从结构中提取数组并使用它创建一个新字段

从另一个数组中定义的(图像)数组中提取多个窗口/补丁

从 ES6/ES7 中的特定结构化对象数组中提取值

如何从对象中提取pin属性并在JavaScript中创建一个pin数组?

从结构数组中提取字段以放入另一个结构数组

从单元格中提取数字的特定结构

从对象数组中提取每个对象的属性值,然后放入另一个数组中

从多个文件(结构输出)中提取数据并打印到一个文件

如何从多个其他文件的特定列中的一个文件中提取所有行?

如何提取文档中具有特定结构的 MONGODB 集合的前 N 个元素

如何从包含HTML代码的数组元素中提取特定部分,并使用提取的内容创建一个新数组?

从嵌套的数组中提取一个数组

Javascript删除一个具有特定结构的html标记

在属性内附加一个结构,该属性是Swift中其他结构内的数组

如何基于另一个数组中的条件从关联数组中提取?

从 nodejs 中的数组中提取列表文件,但一步一个 nodejs

从字符串中提取一个或多个模式

如何从多个对象 mongoDB 中提取一个值

从列表中的多个数据框中提取一个点

如何使用python从另一个文件中的多个文件中提取数据?

如何从 json 中提取属性并在 python 中创建一个列表?

Ramda,从数组中提取一个json索引

如何从csv文件中提取一个numpy数组?

搜索数组,查找ID指定为另一个数组的元素,从结果中提取属性

从表中提取一个特定条目?

如何在dplyr中提取一个特定的组

从JSON NodeJS中的嵌套数组中提取第一个元素

如何在MongoDB中的数组中提取项目的一个实例?

如何从另一个数组中的 JSON 对象中提取值?