マップ要素の削除
CoddyのGOジャーニー「基礎」セクションの一部 — レッスン 90/109。
Goのマップからエントリを削除するには、組み込みの delete 関数を使用します。これにより、マップからキーと値のペアが削除されます。
スコアのマップを作成します:
scores := map[string]int{
"Alice": 95,
"Bob": 82,
"Charlie": 78,
}
fmt.Println(scores)Bobのスコアをマップから削除します:
delete(scores, "Bob")
fmt.Println(scores)結果:
map[Alice:95 Charlie:78]存在しないキーを削除しても安全であり、何の影響もありません:
delete(scores, "David") // エラーは発生しませんチャレンジ
初心者このチャレンジでは、Goでマップからエントリを削除する練習をします。
アイテムとその数量が含まれている inventory という名前のマップがあります。あなたのタスクは、delete 関数を使用して、inventory マップから 'pencil' というアイテムを削除することです。
エントリを削除した後、プログラムはアイテムがまだマップ内に存在するかどうかを確認し、結果を出力します。
チートシート
Goでマップからエントリを削除するには、組み込みの delete 関数を使用します:
delete(mapName, key)例:
scores := map[string]int{
"Alice": 95,
"Bob": 82,
"Charlie": 78,
}
delete(scores, "Bob")
// 結果: map[Alice:95 Charlie:78]存在しないキーを削除しても安全であり、何も影響はありません:
delete(scores, "David") // エラーは発生しません自分で試してみよう
package main
import "fmt"
func main() {
// 在庫アイテムとその数量のマップ
inventory := map[string]int{
"pen": 15,
"pencil": 10,
"paper": 25,
"eraser": 5,
}
fmt.Println("Initial inventory:", inventory)
// TODO: inventory マップから 'pencil' のエントリを削除する
fmt.Println("Updated inventory:", inventory)
// 'pencil' がまだマップ内に存在するかどうかを確認する
_, exists := inventory["pencil"]
fmt.Println("Does 'pencil' exist in inventory?", exists)
}
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。