実現したいこと
配列の中に
[productList(name: "商品名", stock: "在庫数"), productList{name: "牛乳", stock: "4"), productList{name: "コーヒー", stock: "6")]
のように商品名と在庫数を入力し,この配列の中から商品名で検索をかけて該当する商品の在庫数を変更したいです。
発生している問題・分からないこと
productListArray = [productList(name: "商品名", stock: "在庫数"), productList{name: "牛乳", stock: "4"), productList{name: "コーヒー", stock: "6"), ...]
の配列を作成し,牛乳の在庫数(stock)を変更するため牛乳が格納されているindexPathを取得するため
print(self.productListArray.firstIndex(of: "牛乳"))
と入力したところ表題のエラーが出てしまいました。
エラーメッセージ
error
1Cannot convert value of type 'String' to expected argument type 'viewProductViewController.productList' 2 3Referencing instance method 'firstIndex(of:)' on 'Collection' requires that 'viewProductViewController.productList' conform to 'Equatable' 4 5の2つのエラーが出てしまいます。
該当のソースコード
swift
1struct productList { 2 var name: String 3 var stock: String 4 } 5var productListArray = [productList(name: "商品名", stock: "在庫数"), productList{name: "牛乳", stock: "4"), productList{name: "コーヒー", stock: "6")] 6 7 override func viewDidLoad() { 8 super.viewDidLoad() 9 print(self.productListArray.firstIndex(of: "商品名")) 10 }
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
検索をかけましたが,同じようにproductList(name: ,stock: )のように作られている記事を見つけることができませんでした。
補足
特になし
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/08/21 04:39