函数介绍和应用案例 | 学习笔记

简介: 简介:快速学习函数介绍和应用案例

开发者学堂课程【Go 语言核心编程 - 基础语法、数组、切片、Map :函数介绍和应用案例】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/625/detail/9592


函数介绍和应用案例


目录:

一、函数的基本概念

二、函数基本语法

三、函数快速入门案例


一、函数的基本概念:

函数指的是为完成某一功能的程序指令(语句)的集合,称为函数。(把功能合在一起就是函数)

在 GO 中,函数分为:

自定义函数(自己写的函数就叫自定义函数)、系统函数(查看 GO 编程手册)(系统提供的函数就叫系统函数)


二、函数基本语法:

func 函数名(形参列表)(返回值列表){

执行语句...

Return 返回值列表

}大括号里面的是函数题,执行语句就是我们要完成的功能,比如一个计算的功能或者是一个统计的功能等。

Return 有两个作用

①是返回值列表;

②同时也是终止函数的执行

1)形参列表:表示函数的输入

2)函数中的语句:表示为了实现某一功能代码块

3)函数可以有返回值,也可以没有(如果没有返回值,直接 return 就可以了。


三、函数快速入门案例

使用函数解决前面的计算问题

打开代码

Switch operator{

Case ‘+’:

Res=n1+n2

Case‘-’:

Res=n1-n2

Case ‘*’:

Res=n1*n2

Case‘/’:

Res=n1/n2

Default:

Fmt.println(“操作符号错误...”)

}

现在就是要解决这个代码。

把这段代码封装起来形成一个函数,

//蒋=将计算的功能,放到一个函数中,然后在需要使用时调用即可

Func cal(n1 float64,n2  float64,operator(操作符) byte) float64{

Var   res(结果) float64

Switch operator{

Case ‘+’:

Res=n1+n2

Case‘-’:

Res=n1-n2

Case ‘*’:

Res=n1*n2

Case‘/’:

Res=n1/n2

Default:

Fmt.println(“操作符号错误...”)

}

Return res

调用operator=’*’

Result=cal(n1,n2, operator)

//输入两个数,num1,num2,计算(+,-,*,/),得到结果。

n1=4.5

n2=6.7

operator=’*’

Result=cal(n1,n2, operator)

Fmt.println(“result=”,result)

以上就是快速入门案例。

相关文章
|
微服务
微服务迁移模式之Martin Flower绞杀者模式
绞杀者模式(Strangler Pattern)是一种非常流行的从单体系统向微服务迁移的策略,其主张通过用新服务替换特定功能来将单体系统逐步转换为微服务,一旦新服务已经能够代替原有旧有功能,就将原有功能组件绞杀(即彻底停用)。
3001 1
微服务迁移模式之Martin Flower绞杀者模式
Java之HashMap详解
本文介绍了Java中HashMap的源码实现(基于JDK 1.8)。HashMap是基于哈希表的Map接口实现,允许空值和空键,不同步且线程不安全。文章详细解析了HashMap的数据结构、主要方法(如初始化、put、get、resize等)的实现,以及树化和反树化的机制。此外,还对比了JDK 7和JDK 8中HashMap的主要差异,并提供了使用HashMap时的一些注意事项。
413 2
Java之HashMap详解
|
SQL 关系型数据库 MySQL
MySQL实现并发控制的过程
数据库系统到底是怎么进行并发访问控制的?本文以 MySQL 8.0.35 代码为例,尝试对 MySQL 中的并发访问控制进行整体介绍。
|
传感器 物联网 大数据
信管知识梳理(四)新一代信息技术介绍
新一代信息技术产业包括:大数据、云计算、互联网+、物联网、智慧城市等是新一代信息技术与信息资源充分利用的全新也态,是信息化发展的主要趋势,也是信息系统集成行业今后面临的主要业务范畴。
549 0
信管知识梳理(四)新一代信息技术介绍
|
存储 缓存 JavaScript
ES6 --- WeakMap、WeakSet(弱映射和弱集合)
ES6 --- WeakMap、WeakSet(弱映射和弱集合)
114 6
|
C语言
C语言学习记录——鹏哥扫雷项目实现及递归展开、记录雷坐标
C语言学习记录——鹏哥扫雷项目实现及递归展开、记录雷坐标
168 0
|
机器学习/深度学习 自然语言处理 搜索推荐
ModelScope 魔塔社区初探
第一次接触 ModelScope,记录下在 macOS 上的安装过程。
7662 9
|
存储 自然语言处理 负载均衡
八.全文检索ElasticSearch经典入门-深入理解ElasticSearch核心原理
八.全文检索ElasticSearch经典入门-深入理解ElasticSearch核心原理
|
前端开发 JavaScript Java
springboot+vue考研资料分享系统
本考研资料分享系统设计目标是实现考研资料的信息化管理,提高管理效率,使得考研资料交流工作规范化、科学化、高效化。本文研究的考研资料分享系统基于Springboot架构,采用JSP技术、JAVA编程语言和MYSQL数据库设计开发。通过本系统,实现了管理员和用户两个角色的功能,能够有效提高考研资料交流诊断效率。本系统经过测试,运行效果稳定,操作方便、快捷,是一个功能全面、实用性好、安全性高,并具有良好的可扩展性、可维护性的考研资料分享系统。论文首先阐述了考研资料分享系统的开发,并对该系统进行了较详细的需求分析,探讨了考研资料分享系统的功能需求、业务流程、系统结构和数据库设计等方面的问题。望能利用先
630 0
|
算法 计算机视觉
学习:基于泰勒级数近似估计的图像增强综述
学习:基于泰勒级数近似估计的图像增强综述
653 0
学习:基于泰勒级数近似估计的图像增强综述