草庐IT

go - 将结构 slice 附加到另一个

我是Golang的新手,正在尝试将一段结构的内容附加到另一个实例中。数据被追加,但在方法之外是不可见的。下面是代码。packagesomepkgimport("fmt")typeSomeStructstruct{NamestringValuefloat64}typeSomeStructsstruct{StructInsts[]SomeStruct}func(ssSomeStructs)AddAllStructs(otherstructsSomeStructs){ifss.StructInsts==nil{ss.StructInsts=make([]SomeStruct,0)}for_,

go - 展平参数列表,其中参数可能是 slice 或数组

如果我有这样的函数:funcAcceptsAnything(v...interface{}){args=:FlattenDeep(v);//flattenanyarraysorslices}我正在尝试实现FlattenDeep:funcgetKind(vinterface{})string{rt:=reflect.TypeOf(v)switchrt.Kind(){casereflect.Slice:return"slice"casereflect.Array:return"array"default:return"unknown"}}funcFlattenDeep(args...int

string - 遍历字符串 slice 并将每个字符串加 10

我正在尝试遍历一段字符串并将每个字符串加10,例如:packagemainimport"fmt"funcaddTen(ss*[]string){for_,s:=range*ss{s=fmt.Sprintf("%s10",s)}}funcmain(){ss:=[]string{"a","b","c"}addTen(&ss)fmt.Println(ss)}编译器提示s没有定义。 最佳答案 使用此代码将“10”附加到每个slice元素:packagemainimport"fmt"funcaddTen(ss[]string){fori,s:

sql - 将数组类型的数据库字段扫描到 Golang 中的数组/slice 中

;博士我有一个SQL表users,其中包含一个数组字段。我怎样才能将它扫描到golang中的变量?我的做法:varidintvarusernamestringvaractivites[]stringrow:=db.QueryRow("SELECTid,username,activitiesFROMusersWHEREid=1")err:=row.Scan(&id,&username,&activites)适用于id、用户名。 最佳答案 正如@mkopriva已经指出的,这可以使用StringArray方法或更灵活的Array方法来完

go - 为什么我的追加函数会将 slice 的每个成员更改为要添加的新项目?

我正在制作一个简单的素因子函数,它可以放置一个像[][]int这样的sliceprime_factors_mult(315)=>[[3,2],[5,1],[7,1]]但我得到的不是这个结果[[7,1][7,1][7,1][7,1]]之后因为它们重复而减少为一个空slice他们自己。我试着一步一步地看它,它会将所有值更改为最后一个追加。我应该怎么做才能避免这种情况?funcprime_factors_mult(x[]int)(y[][]int){//Problem36in:=[]int{0,0}vark[][]intfor_,item:=rangex{tok:=0fori:=0;i

go - 添加 []bytes 追加 slice []bytes

我开始学习GO的语言,但我不太了解某些东西,也许我只是感到困惑和疲倦。这是我的代码,有一个结果数组(来自编码字符串,大小为2139614个元素)。我需要解码它们并进一步使用它们。但是当我运行一个迭代时,resultrips是两倍大,前半部分完全是空的。因此,我制作了一个slice并将其添加到所需的范围内。为什么会这样?立即解码结果并重新记录可能更容易,但我不知道该怎么做,好吧)))也许有一种完全不同的方式,作为初学者我还不知道result:=[]string{}fori,_:=rangeinput{result=append(result,i)}sort.Strings(result)

mongodb - 使用结构 slice 更新文档

尝试使用官方mongo驱动程序更新MongoDB中的文档,go.mongodb.org/mongo-driver/mongo这是我要更新的结构typeActivitystruct{Timestamptime.Time`bson:"timestamp,omitempty"`Typestring`bson:"type,omitempty"`}typeMemberstruct{IDprimitive.ObjectID`bson:"_id,omitempty"`Namestring`bson:"name,omitempty"`Activities[]Activity`bson:"activit

go - 将 slice 调整为新顺序

我有一个类型...typeMyTypestruct{Jobstring`json:"Job"`Coststring`json:"Cost"`}这种类型的slice......varrecords[]MyType填充如下...records=append(records,MyType{Job:100,Cost:234},)records=append(records,MyType{Job:101,Cost:4000},)records=append(records,MyType{Job:102,Cost:700},)我想按成本降序对“行”进行排序,所以...records[0].Job等

sorting - 在不创建二级结构的情况下按时间日期字段在 go 1.2 中对结构 slice 进行排序

这个问题在这里已经有了答案:Howtosortbytime.Time(4个答案)关闭3年前。这个答案在这里Sortingbytime.TimeinGolang尝试使用带有映射的辅助数组进行排序typetimeSlice[]reviews_data是否可以在不创建此二级数据结构的情况下对具有日期的对象的golangslice进行排序?给定一个结构typeSortDateExamplestruct{sortByThistime.Timeidstring}一个slice初始化了类似的东西vardatearray=varalerts=make([]SortDateExample,0)dateS

arrays - 如何在子 slice 中拆分 Go 中的 slice

这个问题在这里已经有了答案:SlicechunkinginGo(8个答案)关闭7个月前。我最近在使用Go来创建应用程序。我的问题是:在程序的某个时刻我有一个字符串slice:my_slice=[]string{"string1","string2","string3","string4","string5","string6"}它包含6个字符串。例如,将此slice分成3个部分并将内容分布在三个子slice中的最佳程序(更易于编写和理解)是什么?如果我有:varmy_sub_slice1[]stringvarmy_sub_slice2[]stringvarmy_sub_slice3[]