go语言学习-结构体

1、简介

  • Go语言中的结构体是一种自定义数据类型,可以将不同类型的数据字符组合在一起形成一个单独的实体。
  • 结构体可以用于存储和操作复杂的数据结构,以及创建自定义数据类型。通过自定义结构体创建的变量,可以存储不同类型的数据字段。
  • 在实际开发中,结构体的用途非常广泛,常用于表示复杂的实体,例如数据库中的表结构、API按口的数据格式等。使用结构体不仅可以提高代码的模块化程度,还可以实现复杂数据结构的创建、修改和传递。

2、结构体使用

2.1 简单示例

package mainimport "fmt"// 想象一种情况,假如我们需要描述一个“人”的信息,这个人有姓名,性别,年龄,手机号,身份证号,家庭住址等,我们该怎么定义?
// ID,姓名,性别,年龄,手机号,身份证号,家庭住址: int, string, string, int, int, int,string
// 这个时候 如果自定义一个类型,比如这个类型就叫People,然后他有这么多属性 我们直接传递值是不是就可以
// 这个问题就可以用go语言的结构体解决。
// 结构体是由一个或多个不同类型或相同类型的数据组成的数据集合,通过自定义结构体创建的变量,可以存储不同类型的数据字段。
// 结构体在程序开发时,用途非常广泛,不仅可以提高代码的模块化程度,还可以实现复杂数据结构的创建、修改、传递等// 定义一个结构体
// type 结构体名称 struct
type People struct {Name    string //结构体具有的属性 属性名 类型Sex     stringAge     intAddress string
}func main() {// 创建以后就可以像其他类型一个进行变量的定义var p People// 之后可以通过p.xxx进行赋值  结构体.成员名p.Name = "杜宽"p.Sex = "男"p.Age = 18p.Address = "北京"fmt.Printf("定义的数据是: %v, 姓名是:%s\n", p, p.Name)//也可以在定义变量时直接赋值var p2 People = People{"Dotbalo", "Man", 19, "Russia"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/156403.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JSP:Tag文件的使用

需求:多个JSP页面可能需要使用一些相同的信息 例如:导航栏、标题等。 目标:提高这些相同信息的代码的复用性。 方法:将这些相同的元素形成一种特殊的文件,以便所有页面都可以使用,即:Tag文件 1、Tag对…

MySQL数据库入门到大牛_基础_10_创建和管理表(创建和管理数据库;创建表;修改表;重命名表;删除表;清空表,内容扩展)

前面我们完成了查询结构的介绍,本章介绍DDL和DCL中的COMMIT和ROLL BACK。 文章目录 1. 基础知识1.1 一条数据存储的过程1.2 标识符命名规则1.3 MySQL中的数据类型 2. 创建和管理数据库2.1 创建数据库2.2 使用数据库2.3 修改数据库2.4 删除数据库 3. 创建表3.1 创建…

猫罐头哪个牌子好吃?精选5款好评率高的猫罐头推荐!

很多新手养猫的姐妹们都会为选罐头感到焦虑!因为每种猫罐头都有优缺点,每只猫咪的胃口也都不同,所以只有综合考虑选择适合自家猫咪的猫罐头的才是最好的。所以姐妹们在选罐头之前可以先做好功课,了解一下怎么选好的猫罐头。 作为开…

Jmeter监听器

Jmeter监听器 一、监听器介绍二、监听器的类型三、监听器详解3.1 察看结果树3.2 Summary Report3.3 聚合报告3.4 后端监听器3.5 Aggregate Graph3.6 Comparison Assertion Visualizer(比较断言可视化器)3.7 JSR223 Listener3.8 Response Time Graph3.9 S…

欧科云链研究院:从香港SFC最新文件看链上交易合规必备之选

出品|欧科云链研究院 作者|Hedy Bi 近日,香港证监会在其官网发布“致持牌法团、获证监会发牌的虚拟资产服务提供者及有联系实体的通函 - 打击洗钱/恐怖分子资金筹集经更新的《打击洗钱/恐怖分子资金筹集的自我评估查…

java switch case 多条件 正确案例错误案例

正确案例: 1.多条件下可以通过case 7: case 3: 执行条件或|,简而言之就是 if (type 7 || type 3){ … } case 0:final String v1 row.get(field).toString();row.put(field, v1);break;case 1:final Float v2 Float.parseFloat(row.get(field).toStri…

CICD 持续集成与持续交付(2)

目录 gitlab 部署 jenkins 部署 配置 实时触发 自动化构建docker镜像 通过ssh插件交付任务 添加jenkins节点 RBAC pipeline jenkins结合ansible参数化构建 安装ansible 新建gitlab项目 jenkins新建项目playbook gitlab 部署 虚拟机最小需求:4G内存 4核cpu 下载&…

shell: 遍历目录下的文件并查看

CRTDIR$(pwd) S"/" ls .| grep ifc | while read file doif test -f $filethenecho "#cat "$CRTDIR$S$filecat $CRTDIR$S$filefi done

【智能优化算法】从蚁群到动物园

目录 引言蚁群优化算法(ACO)ACO 机理ACO 模型描述ACO 移动策略 粒子群优化算法(PSO)PSO 机理PSO 模型描述 萤火虫群优化算法(GSO)GSO 机理GSO 模型描述 群智能优化算法 引言 21世纪,人类社会已经…

ElementUI用el-table实现表格内嵌套表格

文章目录 一、效果图二、使用场景三、所用组件元素(Elementui)四、代码部分 一、效果图 二、使用场景 🛀el-form 表单内嵌套el-table表格 🛀el-table 表格内又嵌套el-table表格 三、所用组件元素(Elementui&#xff…

Kubeadm部署Kubernetes Containerd集群

文章目录 概述一、硬件系统二、基础配置设置主机名配置主机名与IP地址解析关闭防火墙与selinux时间同步(ntp)升级系统内核配置内核转发及网桥过滤*安装ipset及ipvsadm关闭SWAP分区 三、Containerd准备Containerd获取下载解压Containerd配置文件生成并修改Containerd启动及开机自…

5年经验之谈 —— 性能测试如何定位分析性能瓶颈?

你好,我是小牛,目前在一家准一线互联网大厂做测试开发工程师。 对于一般公司普通测试工程师来说,可能性能测试做的并不是很复杂,可能只是编写下脚本,做个压测,然后输出报告结果,瓶颈分析和调优…

【Hello Go】Go语言复合类型

复合类型 分类指针基本操作new函数指针作为函数的参数 数组概述操作数据数组初始化数组比较在函数之间传递数组 slice概述切片的创建和初始化切片操作切片和底层数组关系内建函数appendcopy 切片作为函数传参 map概述创建和初始化常用操作赋值遍历 删除map作函数参数 结构体结构…

近期问题笔记20231116

DMA的洛伦兹约束的来源 多拉格朗日乘子的拉格朗日对偶问题的次梯度搜索 鲁棒优化,only statistical CSI of the users-to-RIS channels H 2 , k \mathbf{H}_{2,k} H2,k​ is available 期望符号的去除, 阅读这篇论文 C.-K. Wen, S. Jin, and K.-K. …

导数...

导数定义: f ′ ( x 0 ) lim ⁡ x → x 0 f ( x ) − f ( x 0 ) x − x 0 f(x_0)\lim\limits_{x\rightarrow{x_0}}\frac{f(x)-f(x_0)}{x-x_0} f′(x0​)x→x0​lim​x−x0​f(x)−f(x0​)​ 罗尔定理:如果函数在[a,b]可导,并且f(a)f(b),那么[a,b]区间内一定有个导数是0 中值…

Python (十三) 输出

程序员的公众号:源1024,获取更多资料,无加密无套路! 最近整理了一波电子书籍资料,包含《Effective Java中文版 第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》&…

基于Python+TensorFlow+Django的交通标志识别系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 随着交通网络的不断扩展和智能交通系统的发展,交通标志的自动识别变得愈发重要。本项目旨在利用Python编…

Redis--list列表

基础概念 元素必须是字符串类型列表头尾增删快,中间增删慢,增删元素是常态元素可以重复最多可以包含2^32 - 1个元素索引和python的列表一样 常用命令 - 增加数据 1.LPUSH key value1 value2 说明:从列表头部压入元素 返回:l…

矩阵转置

描述 输入N&#xff0c;和M&#xff0c;构建两个矩阵:A[N][M]&#xff0c;B[M][N]&#xff0c;M, N <50; 步骤1:输入M, N ; M, N <50; 步骤2:输入A[M][N]; 步骤3:计算:B[N][M]A[M][N]; 步骤4:输出:B [M] [N];这有几个测试组 输入 每个数字都是整数; 输入M, N; M, N <5…

利用SVD对图像进行压缩

利用SVD对图像进行压缩 使用SVD能够对数据进行降维&#xff0c;对图像进行SVD&#xff0c;降维之后然后重构数据&#xff0c;还原后的图像就是压缩后的图像。 SVD SVD进行图像压缩所依据的数学原理就是矩阵的近似表示&#xff1a; A m n ≈ U m k ∑ k k V k n T A_{m\…