【GO语言基础】函数

系列文章目录

【Go语言学习】ide安装与配置
【GO语言基础】前言
【GO语言基础】变量常量
【GO语言基础】数据类型
【GO语言基础】控制流
【GO语言基础】函数

文章目录

  • 系列文章目录
  • 函数
    • 基础函数
    • 调用
  • GoLang API(包)简单介绍
    • 标准库:
    • 第三方库:
    • 自定义库
    • 使用cdn加速拉取第三方包


函数

函数的定义:

func functionName(parameter1 type1, parameter2 type2, ...) returnType {
    // 函数体
    // 可以执行一系列操作
    return returnValue // 可选
}

基础函数

基本函数

func Add() {
}

错误写法:注意不要将第一个括号放新行

func Add()
{
}

在这里插入图片描述
简单写一个累加函数并调用:

package main

import "fmt"

// 累加函数
func Add(a int) int {
	var sum int
	for i := 1; i <= a; i++ {
		sum += i
	}
	return sum
}
func main() {
	
	fmt.Println(Add(100))

}

调用

调用基本格式:pack1.Function(arg1, arg2, …, argn)
Functionpack1 包里面的一个函数,括号里的是被调用函数的实参(argument):这些值被传递给被调用函数的形参(parameter)。

调用函数时,只需使用函数名称和相应的参数值。如果函数有返回值,可以将其赋给一个变量。

package main

import "fmt"
//定义Add函数
func Add(a, b float64) float64 {
	return a + b

}
func main() {
	//调用Add函数,计算a+b
	result := Add(5.15, 3.152)
	fmt.Println(result)

}

函数作为参数调用:

package main

import "fmt"

// 定义一个函数f2,它接受两个整数参数并返回它们的和、差、积
func f2(a, b int) (int, int, int) {
    sum := a + b
    diff := a - b
    product := a * b
    return sum, diff, product
}

// 定义一个函数f1,它接受一个函数f作为参数,调用f并打印返回值
func f1(f func(int, int) (int, int, int)) {
    // 调用传入的函数f
    result1, result2, result3 := f(5, 3)
    
    // 打印返回值
    fmt.Printf("Sum: %d, Difference: %d, Product: %d\n", result1, result2, result3)
}

func main() {
    // 将函数f2作为参数传递给函数f1
    f1(f2)
}

在这里插入图片描述

GoLang API(包)简单介绍

Go语言API(Application Programming Interface)是Go语言提供的一组规范和定义,用于编写可重用的软件组件和应用程序。API定义了应用程序如何与底层系统、库和其他程序进行交互的细节。

标准库:

Go语言的标准库提供了许多基础的API,例如fmt(格式化输出)、os(操作系统接口)、time(时间处理)等。
中文网API

import "fmt"  
fmt.Println("Hello, World!")

第三方库:

许多第三方库也提供了Go语言的API,例如Gin(用于构建Web应用程序的API)、Gorm(用于数据库操作的API)等。

例如:使用mysql API

go get github.com/go-sql-driver/mysql
或
import "github.com/go-sql-driver/mysql"

自定义库

你也可以创建自己的API来提供特定的功能或服务。这通常涉及创建一个包,并在其中定义函数、类型和变量。然后,你可以将该包发布到适当的存储库或与其他人共享。

// mypackage包提供了自定义的API  
package mypackage  
  
import "fmt"  
  
// MyFunction是一个自定义函数,可以在其他程序中使用  
func MyFunction() {  
    fmt.Println("Hello from mypackage!")  
}

使用自定义库时,你需要将该库导入到你的程序中,然后就可以使用其中的API了。

使用cdn加速拉取第三方包

使用Goland加速:
在这里插入图片描述
启用go模块集成
在这里插入图片描述

# 1. 七牛 CDN
GOPROXY=https://goproxy.cn,direct
# 2. 阿里云
GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
# 3. 官方
GOPROXY=https://goproxy.io,direct

添加后应用:
然后go get拉取需要的包即可
在这里插入图片描述文章来源地址https://www.uudwc.com/A/Y6PER/

原文地址:https://blog.csdn.net/qq_39583774/article/details/132758349

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

上一篇 2023年09月12日 06:12
在 IntelliJ IDEA 中远程部署 Java 程序
下一篇 2023年09月12日 06:13