热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在golang​中引入包、函数和变量

如何在golang中引入包、函数和变量?针对这个问题,这篇文章给出了相对应的分析和解答,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法

如何在golang中引入包、函数和变量?针对这个问题,这篇文章给出了相对应的分析和解答,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。

一、go的包引入

go的引入通过import关键字引入

如:

import (
	"fmt"
	"math"
)

import "fmt"
import "math"

go的包引入,在调用方法或者变量时,需要首字母大写才可被调用,如

package main
 
import "fmt"
import "math"
func main() {
	//以下代码不可执行,供参考
	fmt.Println(math.pi) //错误引入
	fmt.Println(math.Pi)  //正确引入,首字母要大写
}

即:

如何在golang​中引入包、函数和变量

二、go函数

1、有返回值

package main
 
func main() {
	//调用函数
	result := myFun(1, 1)
	println(result)
}
 
//自定义函数
//x,y为参数,函数末尾int为返回值
func myFun(x, y int) int {
	return x+y;
}

2、无返回值

package main
 
func main() {
	//调用函数
	myVoidFun(1, 1)
}
 
//自定义函数
//x,y为参数
func myVoidFun(x, y int)  {
	println("函数myVoidFun被调用了")
	println("传入的参数x、y分别是:")
	print(x)
	print("、")
	print(y)
}

3、多个返回值

package main
 
func main() {
	//调用函数
	myVoidFun(1, 1)
}
 
//自定义函数
//x,y为参数
func myVoidFun(x, y int)  {
	a, b := multiple(1, 2)
	println("第一个参数:")
	println(a)
	println("第二个参数:")
	println(b)
}
 
/**
多个返回值
前边为入参
返回值为列表(int,int)
 */
func multiple(x , y int)(int,int){
	return x,y;
}

4、命名返回值

package main
 
import "strconv"
 
func main() {
	//调用函数
	result, resultStr := myReturnFun(1, 2)
	println("返回第一个参数")
	println(result)
	println("返回第二参数")
	println(resultStr)
}
//命名返回值
func myReturnFun(x , y int) (result int,resultStr string) {
	println("执行函数mrReturnFun")
	result = x //直接作为第一个返回值
	resultStr = strconv.Itoa(y)//直接作为第二个返回值
	return
}

命名返回值:

是指在函数体中直接将返回的值对应写好,然后直接return就可以了,这样的好处是,可以减少一定的代码量,试用于逻辑较短的方法,若方法体过长,不建议使用这种方法。

三、变量

var:可以用于声明在函数体中,也可以声明在函数体之外

package main
 
import "strconv"
//函数体外声明
var param1,param2,param3 string
func main() {
	var  value1, value2,value3 int;
	//赋值函数体外参数
	param1="is param1"
	param2="is param2"
	param3="is param3"
	//方法体内赋值
	value1 = 1
	value1 = 2
	value1 = 3
	println("函数体外的参数")
	println(param1)
	println(param2)
	println(param3)
	println("函数体内的参数")
	println(value1)
	println(value2)
	println(value3)
}

以上便是如何在golang中引入包、函数和变量,虽然从篇幅上看很复杂,但是示例代码非常详细且容易理解,如果想了解更多相关内容,请关注编程笔记行业资讯。


推荐阅读
  • Java自带的观察者模式及实现方法详解
    本文介绍了Java自带的观察者模式,包括Observer和Observable对象的定义和使用方法。通过添加观察者和设置内部标志位,当被观察者中的事件发生变化时,通知观察者对象并执行相应的操作。实现观察者模式非常简单,只需继承Observable类和实现Observer接口即可。详情请参考Java官方api文档。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 数组的排序:数组本身有Arrays类中的sort()方法,这里写几种常见的排序方法。(1)冒泡排序法publicstaticvoidmain(String[]args ... [详细]
  • (三)多表代码生成的实现方法
    本文介绍了一种实现多表代码生成的方法,使用了java代码和org.jeecg框架中的相关类和接口。通过设置主表配置,可以生成父子表的数据模型。 ... [详细]
  • golang 解析磁力链为 torrent 相关的信息
    其实通过http请求已经获得了种子的信息了,但是传播存储种子好像是违法的,所以就存储些描述信息吧。之前python跑的太慢了。这个go并发不知道写的有没有问题?!packag ... [详细]
  • Go 快速入门指南命令行参数
    命令行参数个数调用os包即可。获取参数个数,遍历参数packagemainimport(fmtos)funcmain(){fmt.Printf(Numberofargsi ... [详细]
  • 集成第三方库,自检测读取配置文件。文件读取,结构体定义,接口实现,错误返回,库解析,适合新同学练手。思路文件读取获取字节流文件类型分析,确定解析api集成第三方解析api管理器定义 ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ... [详细]
  • 本文介绍了在多平台下进行条件编译的必要性,以及具体的实现方法。通过示例代码展示了如何使用条件编译来实现不同平台的功能。最后总结了只要接口相同,不同平台下的编译运行结果也会相同。 ... [详细]
  • 面向对象之3:封装的总结及实现方法
    本文总结了面向对象中封装的概念和好处,以及在Java中如何实现封装。封装是将过程和数据用一个外壳隐藏起来,只能通过提供的接口进行访问。适当的封装可以提高程序的理解性和维护性,增强程序的安全性。在Java中,封装可以通过将属性私有化并使用权限修饰符来实现,同时可以通过方法来访问属性并加入限制条件。 ... [详细]
  • Android系统源码分析Zygote和SystemServer启动过程详解
    本文详细解析了Android系统源码中Zygote和SystemServer的启动过程。首先介绍了系统framework层启动的内容,帮助理解四大组件的启动和管理过程。接着介绍了AMS、PMS等系统服务的作用和调用方式。然后详细分析了Zygote的启动过程,解释了Zygote在Android启动过程中的决定作用。最后通过时序图展示了整个过程。 ... [详细]
  • 目录在Go语言项目中使用Zap日志库介绍默认的GoLogger日志库实现GoLogger设置Logger使用LoggerLogger的运行GoLogger的优势和劣势优势劣势Ube ... [详细]
author-avatar
滨州电信1988_259
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有