我希望在我在Go中创建的结构中为字符串变量添加数组。
type Recipes struct { //Struct for recipe information
name string
prepTime int
cookTime int
recipeIngredient string
recipeID int
recipeYield int
}
由
调用Recipe1.name = "BBQ Pulled Chicken"
Recipe1.prepTime = 25
Recipe1.cookTime = 5
Recipe1.recipeIngredient = "1 8-ounce can reduced-sodium tomato sauce, two"
Recipe1.recipeID = 1
Recipe1.recipeYield = 8
recipeIngredient将有多种成分,因此它不能只是一个字符串。我想在recipeIngredient中有多个数组/切片元素。有人知道我怎么能这样做吗?
答案 0 :(得分:3)
使用一片string
。例如,
package main
import "fmt"
type Recipe struct {
Name string
PrepTime int
CookTime int
Ingredients []string
ID int
Yield int
}
func main() {
var recipe Recipe
recipe.Name = "BBQ Pulled Chicken"
recipe.PrepTime = 25
recipe.CookTime = 5
recipe.Ingredients = append(recipe.Ingredients,
"1 8-ounce can reduced-sodium tomato sauce",
)
recipe.Ingredients = append(recipe.Ingredients,
"1/2 medium onion, grated ",
)
recipe.ID = 1
recipe.Yield = 8
fmt.Println(recipe)
fmt.Printf("Ingredients: %q\n", recipe.Ingredients)
}
输出:
{BBQ Pulled Chicken 25 5 [1 8-ounce can reduced-sodium tomato sauce 1/2 medium onion, grated ] 1 8}
Ingredients: ["1 8-ounce can reduced-sodium tomato sauce" "1/2 medium onion, grated "]