我很难找到如何计算多个数组的结束值。让我举个例子:
这里我有四个数组:
let numberOne: [string] = ["...", "...", "car"]
let numberTwo: [string] = ["...", "...", "bike"]
let numberThree: [string] = ["...", "...", "car"]
let numberFour: [string] = ["...", "...", "car"]
让我们说这些是我的阵列。但是,我不知道每次有多少个数组,可以在1到14之间。
如何显示包含结尾值的数组的数量,例如car
?
希望你能帮助我: - )
答案 0 :(得分:3)
一种方式:
func countLastEelement(){
let numberOne: [String] = ["...", "...", "car"]
let numberTwo: [String] = ["...", "...", "bike"]
let numberThree: [String] = ["...", "...", "car"]
let numberFour: [String] = ["...", "...", "car"]
let numbers:[[String]] = [numberOne, numberTwo, numberThree, numberFour]
var count:Int! = 0
for number in numbers {
if number[number.count-1] == "car" {
count = count + 1
}
}
print(count) // output: 3
}
另:
for number in numbers {
if number.last == "car"{
count = count + 1
}
}
答案 1 :(得分:0)
这是一个伪代码而不是一个确切的例子,可能存在语法问题。但是这会给你一个字典,计数和任何给定的最后一个元素的选择数组。它可能有些过分,但你并没有准确地说出你想要的东西,所以我决定尽可能多地获取数据。
var arraySet : [Array] = [[]] //Your set of arrays
var unique : [String:[Array]] = [:]
for array in arraySet{
if(unique[array.last] == nil)
{
unique[array.last] = [array]
}
else
{
unique[array.last] += [array]
}
}