返回顶部
首页 > 资讯 > 精选 >从另一个切片创建切片但类型不同
  • 626
分享到

从另一个切片创建切片但类型不同

2024-02-02 14:02:49 626人浏览 独家记忆
摘要

问题内容 是否有一种简单易读的方法来创建切片的副本但使用另一种类型? 例如,我收到了 int32 的切片 (mySlice []int32),但我需要它的副本,并且该副本应为 int64: copyOfMyS

问题内容

是否有一种简单易读的方法来创建切片的副本但使用另一种类型? 例如,我收到了 int32 的切片 (mySlice []int32),但我需要它的副本,并且该副本应为 int64: copyOfMySlice []int64

我需要类似的东西:

func f(s []int32) int32 {
    
    var newSlice = make([]int64, len(s))

    copy(newSlice, s) // how this can be done?

    // work with newSlice

}


正确答案


唯一的方法是逐个翻译和复制每个元素。您可以使用函数回调编写复制函数:

func CopySlice[S, T any](source []S, translate func(S) T) []T {
    ret := make([]T, 0, len(source))
    for _, x := range source {
        ret = append(ret, translate(x))
    }
    return ret
}

并使用它:

intSlice:=CopySlice[uint32,int]([]uint32{1,2,3},func(in uint32) int {return int(in)})

以上就是从另一个切片创建切片但类型不同的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: 从另一个切片创建切片但类型不同

本文链接: https://lsjlt.com/news/560143.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 从另一个切片创建切片但类型不同
    问题内容 是否有一种简单易读的方法来创建切片的副本但使用另一种类型? 例如,我收到了 int32 的切片 (mySlice []int32),但我需要它的副本,并且该副本应为 int64: copyOfMyS...
    99+
    2024-02-02
  • 从切片创建类型
    问题内容 我想创建一个像堆栈一样的数据类型。我想在“顶部”添加和删除条目,并能够将其打印出来。在此示例中,xpath 类型用于遍历 xml 文档并跟踪当前路径。 所以我创建了一个xpa...
    99+
    2024-02-06
    编译错误 string类 overflow
  • 如何将元素从一个切片移动到另一个切片
    php小编苹果将为大家介绍如何将元素从一个切片移动到另一个切片的方法。在编程中,切片是一种常用的数据结构,它可以存储多个元素。有时候,我们需要将某个元素从一个切片中取出,并将其移动到另...
    99+
    2024-02-10
  • Golang:创建一个 strutcs 切片
    从现在开始,我们要努力学习啦!今天我给大家带来《Golang:创建一个 strutcs 切片》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的...
    99+
    2024-04-05
  • 在 Golang 中将一个字节切片压缩到另一个切片中
    问题内容 我想实现与此处给出的解决方案完全相反的效果,将一个字节片段压缩到另一个字节片段中 - 将压缩的 []byte 转换为解压的 []byte golang 代码 类似 - fun...
    99+
    2024-02-12
  • 如何使用 Go 从切片中随机选择一个偏向切片一端的项目?
    问题内容 我了解从 go 中的 slice 中选择随机值的一种方法: rand.Seed(time.Now().UTC().UnixNano()) ...
    99+
    2024-02-06
  • 反射 - 获取单个切片元素的类型
    小伙伴们对Golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《反射 - 获取单个切片元素的类型》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望...
    99+
    2024-04-04
  • 一文详解Golang中的切片数据类型
    目录含义定义三个要素切片与数组的区别示例代码切片内存分布切片定义分类数组生成切片示例代码切片索引直接声明切片定义语法代码示例使用make定义切片常用操作长度计算容量计算判断是否为空切...
    99+
    2024-04-02
  • Android中怎么实现一个图片切割工具类
    Android中怎么实现一个图片切割工具类,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。图片切割工具类定义:public class ImageSpli...
    99+
    2023-05-30
    android
  • 如何附加到元素类型不是golang中命名类型的切片
    php小编香蕉为您介绍如何附加到元素类型不是golang中命名类型的切片。在Golang中,我们可以使用内置的append函数将元素附加到切片中,但是如果切片的元素类型不是命名类型,即...
    99+
    2024-02-09
  • 帝国CMS碎片类型解析:一览五种不同类型
    帝国CMS碎片类型解析:一览五种不同类型,需要具体代码示例 在帝国CMS中,碎片是一种用于动态展示内容的工具,可以通过碎片类型来实现不同的展示效果和功能。本文将介绍帝国CMS中常见的五...
    99+
    2024-03-12
    cms 类型分类 碎片解析
  • 从任何值类型的字典中获取字符串键的切片
    学习Golang要努力,但是不要急!今天的这篇文章《从任何值类型的字典中获取字符串键的切片》将会介绍到等等知识点,如果你想深入学习Golang,可以关注我!我会持续更新相关文章的,希望对大家都能有所...
    99+
    2024-04-05
  • 从另一个相同类型的数组向数组添加新值 MongoDB-GO
    php小编鱼仔在这里为大家介绍一种从另一个相同类型的数组向数组添加新值的方法,即在MongoDB-GO中的操作。这种方法可以帮助开发者更方便地对数组进行修改和更新,提高开发效率。下面我...
    99+
    2024-02-08
  • 一文教你如何快速学会Go的切片和数组数据类型
    目录什么是数组声明数组数组是值类型数组的长度迭代数组多维数组切片创建切片修改切片切片长度和容量使用make创建切片切片追加切片作为函数参数多维切片什么是数组 数组是属于同一类型的元素...
    99+
    2023-03-07
    Go切片 数组 Go切片 Go 数组
  • 将数据从结构 X 复制到结构 Y,但将一个字段转换为不同类型
    编程网今天将给大家带来《将数据从结构 X 复制到结构 Y,但将一个字段转换为不同类型》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都...
    99+
    2024-04-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作