配列の要素を検索する方法についてご紹介します。
要素の値を返す 「first」
条件を指定すると、指定した条件と一致する要素の値を返します。
条件に一致する要素がない場合は、nilを返します。
import SwiftUI
struct SerchSample: View {
var fruits: [String] = ["apple", "banana", "orange"]
var body: some View {
VStack {
if let text = fruits.first(where: {$0 == "banana"} ) {
Text(text)
}
else {
//例外発生
}
}
}
}
参考:参考:$0について
について
$0はパラメータ部分の記述を省略しただけであり、$0を使用せずに記述すると、以下のようなコードになります。
struct SerchSample2: View {
var fruits: [String] = ["apple", "banana", "orange"]
var body: some View {
VStack {
if let text = fruits.first(where: {elem in
elem == "banana"
} ) {
Text(text)
}
else {
//例外発生
}
}
}
}要素のインデックスを返す「firstIndex」
条件を指定すると、指定した条件と一致する要素のインデックスを返します。
import SwiftUI
struct SerchFirstIndex: View {
var fruits: [String] = ["apple", "banana", "orange"]
var body: some View {
VStack {
if let index = fruits.firstIndex(of: "banana") {
Text("bananaのインデックス:\(index)")
}
else {
//例外発生
}
}
}
}
