2、第一个GO 程序
引言
接下里我们就用Go Land 工具,开发第一个GO程序。大家也可以用其他的开发工具,例如 Vs Code
1、新建项目
第一个是选择你的程序保存位置 (不要有中文)。
第二个是你的Go的编译器的安装地址。
选择完毕后,就点击 Create,完成项目创建。
创建完成后,我们就拥有了一个初始的项目。
2、创建第一个 Go 程序
2.1 新建 Go程序
鼠标选中项目,然后右键, 鼠标滑到 New ,点击 Go File。
然后输入你的文件名称,不要是中文。输完后,就按回车键。
就能在目录中看到刚刚新建的文件了。
2.2 输入代码
package 声明
每个Go源代码文件的开头都是一个package声明,表示该Go代码所属的包。
包的概念
GO语言中是通过包来对代码进行管理的。那么什么是包呢?
想象你正在建设一个大楼,而这个大楼有多个楼层,每个楼层负责不同的功能。例如:
- 一楼是“前台接待”。
- 二楼是“财务部”。
- 三楼是“技术支持”。
这些楼层各自独立,但都在同一个大楼里。现在,假设你正在开发一个管理系统,这个系统需要使用到这些楼层的信息,比如“前台接待”的信息、或者“财务部”的数据。为了避免混淆,我们在系统中需要清楚地标明我们要使用的是哪个楼层的信息。于是,我们给每个楼层起了一个名字:
- “前台接待”是一个包,叫做
package frontdesk
。 - “财务部”是另一个包,叫做
package finance
。 - “技术支持”是另一个包,叫做
package support
。
这样,当你需要用到前台接待的功能时,你可以写import frontdesk
来引入“前台接待”楼层的信息。同样,如果你需要财务部的数据,就写import finance
,如此一来,代码中就能清晰地知道每个功能是来自哪个楼层(包)。
包就是用来标识这些“楼层”的,帮助我们管理和使用不同的功能。每个包就是一个独立的模块,里面有具体的功能代码。通过这种方式,整个系统就能高效而有条理地运行。
而如果要让系统能够正常启动,必须有一个“主楼层”——main
包,这个包是程序的入口,负责启动整个系统。如果没有这个包,程序就不能运行。
导入 fmt 包
第三行
import
表示导入,fmt
是包名。
不管是使用我们自己定义的包还是GO自带都是通过import导入的,“fmt”是GO自带的包,包含了怎样将信息打印在电脑屏幕上。注意包名要用“”表示。
main 函数声明
在 Go 语言中,程序的执行从 main
函数开始,相当于教室的门口。需要注意的是,这一行代码有固定的写法,其中 func
和 main
之间必须有空格,同时 main
后面必须紧跟一对小括号。接着,紧随其后的一对大括号 {}
用于包裹具体的任务代码,即程序的实际执行部分。
在这里,func
表示声明函数,main
是函数名。函数就像数学中的函数,都是为了实现特定的功能,例如三角函数等。在 Go 语言中,main
函数的作用是作为程序的入口点。需要特别注意的是,Go 中的函数必须以 func
关键词开头,且函数名后必须跟一对小括号。
使用 fmt.Print 打印内容
这行代码使用了 fmt
包中的 Print
函数,将 "hello go"
打印到屏幕上。需要注意的是,fmt
包和 Print
函数之间用点号(.
)连接,这个点号必须在半角输入法状态下输入。此外,Print
函数的首字母 P 必须大写,不能写成小写,因为 Go 语言是区分大小写的,许多同学在这里容易出错。
将要输出的内容放在 Print
函数的括号内(注意括号应在半角状态下输入),并且要用双引号将内容包裹起来(同样,双引号应为半角状态)。
3、代码运行
我们第一个GO程序已经写完了,那么我们写的程序到底能否运行呢?是否有错误呢?下面我们执行我们的程序。
选择第一个或者第二个都行。点击运行,我们的控制台就会有一条打印信息。
相关文章:
![](https://i-blog.csdnimg.cn/img_convert/c58b2968a662e143c4b448dc2efcdd26.png)
2、第一个GO 程序
引言 接下里我们就用Go Land 工具,开发第一个GO程序。大家也可以用其他的开发工具,例如 Vs Code 1、新建项目 第一个是选择你的程序保存位置 (不要有中文)。 第二个是你的Go的编译器的安装地址。 选择完毕后,就点击 …...
![](https://i-blog.csdnimg.cn/direct/72610ea0be864826af7343e6413ff628.png)
【Linux-多线程】-线程安全单例模式+可重入vs线程安全+死锁等
一、线程安全的单例模式 什么是单例模式 单例模式是一种“经典的,常用的,常考的”设计模式 什么是设计模式 IT行业这么火,涌入的人很多.俗话说林子大了啥鸟都有。大佬和菜鸡们两极分化的越来越严重,为了让菜鸡们不太拖大佬的后…...
![](https://www.ngui.cc/images/no-images.jpg)
00000007_C语言设计模式
C语言设计模式 尽管 C 语言并不直接支持面向对象编程,但通过结构体和函数指针的灵活运用,我们依然可以实现多种经典的设计模式。 1. 工厂模式 1.1 工厂方法的定义与实现 工厂模式通过统一的接口创建对象,客户端无需知道具体的创建逻辑。 代…...
![](https://i-blog.csdnimg.cn/direct/dea9a5f4a4164867a5b4f458e50158a8.png)
探索数据存储的奥秘:深入理解B树与B+树
key value 类型的数据红黑树(最优二叉树,内存最优),时间复杂度:O(logn),调整方便;一个结点分出两个叉B树一个节点可以分出很多叉数据量相等的条件下:红黑树的层数很高&am…...
![](https://i-blog.csdnimg.cn/direct/be58eea460724be8a74913839b1903cf.png)
Web渗透测试之XSS跨站脚本之JS输出 以及 什么是闭合标签 一篇文章给你说明白
目录 闭合标签 XSS之js输出 闭合标签 封闭标签 达到 让标签值不当成 一个属性值来展示 从而达到xss注入的效果 "> 为了想办法闭合前面的标签,不用也行成功率高一些 攻击方法 "><script>confirm(1)</script>, 其中 "> 我们称之为完成闭合…...
![](https://www.ngui.cc/images/no-images.jpg)
EasyExcel的应用
一、简单使用 引入依赖: 这里我们可以使用最新的4.0.2版本,也可以选择之前的稳定版本,3.1.x以后的版本API大致相同,新的版本也会向前兼容(3.1.x之前的版本,部分API可能在高版本被废弃)&…...
![](https://i-blog.csdnimg.cn/direct/47bc0176f851423c9ebb1fedca426c9d.png)
VS Code的设置功能以及多层级的设置方式与解密
VS Code的Settings功能为用户提供了极大的灵活性和便利性,使得用户可以根据自己的需求和偏好来定制编辑器的行为和外观。 Settings 可以实现的具体功能 VS Code的设置项非常丰富,涵盖了各个方面,包括但不限于: 编辑器选项&…...
![](https://i-blog.csdnimg.cn/direct/6fe32950c6cc4b3992c3a97fdb0b89ad.png)
UI自动化测试框架playwright--初级入门
一、背景:UI自动化的痛点: 1、设计脚本耗时: 需要思考要如何模拟用户的操作,如何触发页面的事件,还要思考如何设计脚本,定位和操作要交互的元素、路径、位置,再编写代码逻辑,往复循…...
![](https://i-blog.csdnimg.cn/direct/f94e498ee3d246699a9c3cee60842621.png)
SQL多表联查、自定义函数(字符串分割split)、xml格式输出
记录一个报表的统计,大概内容如下: 多表联查涉及的报表有:房间表、买家表、合同表、交易表、费用表、修改记录表 注意:本项目数据库使用的是sqlserver(mssql),非mysql。 难点1:业主信息&#…...
![](https://www.ngui.cc/images/no-images.jpg)
Fast API使用
相关的代码上都有注释,其中前端代码是用来提交表单的 此代码进行了跨域处理,允许前端直接提交表单,并正常返回 完整代码: from typing import Unionfrom fastapi import Header, Cookie from pydantic import BaseModel, Field f…...
![](https://i-blog.csdnimg.cn/direct/a3421f9aaf4f4effab372dfbbffcaf50.png)
LLM - Llama 3 的 Pre/Post Training 阶段 Loss 以及 logits 和 logps 概念
欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/145056912 Llama 3 是 Meta 公司发布的开源大型语言模型,包括具有 80 亿和 700 亿参数的预训练和指令微调的语言模型,支持…...
![](https://www.ngui.cc/images/no-images.jpg)
MySQL 中删除重复数据 SQL 写法
要在 MySQL 中删除重复的数据并只保留一条,可以使用下面的方法(要用的时候直接复制小改下条件和表名称即即可) 方法一:使用 left join 子查询删除重复数据(推荐) 温馨提示:本人在 500w 数据下执行此 SQL 耗费 15s-30s…...
![](https://www.ngui.cc/images/no-images.jpg)
docker minio镜像arm64架构
minio版本为RELEASE.2021-09-03T03-56-13Z 原项目信创改造,服务器资源改为了arm64架构,统信uos docker镜像库内没有对应的minio镜像,当前镜像为拉取源码后,自编译打包镜像,亲测可用。 使用方式 将tar包导入到服务器…...
![](https://www.ngui.cc/images/no-images.jpg)
VUE3 监听器(watch)
在 Vue 3 中,监听器(watch)是用来观察响应式数据的变化,并在数据发生变化时执行相应操作的机制。watch 主要用于响应式数据变化时的副作用处理,比如异步操作、数据更新等。 1. 基础使用 在 Vue 3 中,watc…...
![](https://www.ngui.cc/images/no-images.jpg)
CAPL如何设置TCP/IP传输层动态端口范围
在TCP/IP协议中,应用程序通过传输层协议TCP/UDP传输数据,接收方传输层收到数据后,根据传输层端口号把接收的数据上交给正确的应用程序。我们可以简单地认为传输层端口号是应用程序的标识,这就是为什么我们说应用程序在使用TCP/IP协议通信时要打开传输层端口号或者绑定端口号…...
![](https://www.ngui.cc/images/no-images.jpg)
随记:有关Springboot项目中的时间格式实现的几种方式
1.注解 JsonFormat DateTimeFormat import com.fasterxml.jackson.annotation.JsonFormat; import org.springframework.format.annotation.DateTimeFormat;import java.time.LocalDateTime;public class Event {// 序列化和反序列化时生效JsonFormat(pattern "yyyy-MM…...
![](https://www.ngui.cc/images/no-images.jpg)
IntelliJ IDEA 优化设置
针对 Java 开发,IntelliJ IDEA 有许多优化设置,可以帮助提高代码编写、调试、构建和运行的效率。以下是一些针对 Java 开发的优化建议: 1. 增加 JVM 内存和性能优化 增加堆内存: 通过调整 idea.vmoptions 文件,增加 IntelliJ ID…...
![](https://i-blog.csdnimg.cn/direct/8335a8b4f812437bb92e819653b0e56a.png)
jsp企业财务管理系统设计与实现
企业财务管理系统 摘要 对于企业集来说,财务管理的地位很重要。随着计算机和网络在企业中的广泛应用,企业发展速度在不断加快,在这种市场竞争冲击下企业财务管理系统必须优先发展,这样才能保证在竞争中处于优势地位。对此企业必须实现财务管理…...
![](https://www.ngui.cc/images/no-images.jpg)
EscherNet运行笔记
文章标题:EscherNet: A Generative Model for Scalable View Synthesis 1. 环境配置 conda env create -f environment.yml -n eschernet conda activate eschernet 2. 数据下载 wget https://tri-ml-public.s3.amazonaws.com/datasets/views_release.tar.gz 3…...
![](https://www.ngui.cc/images/no-images.jpg)
Java中的反射机制及其应用场景
目录 什么是Java反射机制? 工作原理 主要应用场景 注意事项 总结 什么是Java反射机制? Java反射机制是一种强大的工具,它允许程序在运行时访问、检查和修改其本身的类和对象的信息。通过反射,开发者可以在不知道类的具体实现…...
![](https://i-blog.csdnimg.cn/direct/3d0da6f16bc14fcf8b6743818690d394.png)
信息科技伦理与道德3:智能决策
1 概述 1.1 发展历史 1950s-1980s:人工智能的诞生与早期发展热潮 1950年:图灵发表了一篇划时代的论文,并提出了著名的“图灵测试”;1956年:达特茅斯会议首次提出“人工智能”概念;1956年-20世纪70年代&a…...
![](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=assets%2Fcomponents.B1JZbf0_.png&pos_id=img-OD9aqqVT-1736380938373)
青少年编程与数学 02-006 前端开发框架VUE 16课题、组件基础
青少年编程与数学 02-006 前端开发框架VUE 16课题、组件基础 一、定义一个组件二、使用组件三、传递 props四、监听事件五、通过插槽来分配内容六、动态组件七、DOM 内模板解析注意事项1、大小写区分2、闭合标签3、元素位置限制 课题摘要:本文介绍了Vue.js中的组件基础…...
![](https://i-blog.csdnimg.cn/direct/b51a745fe8e248ccae1ae1909d4f2260.png)
25/1/11 算法笔记 Yolov8物体识别
这几天做了给Yolov8检测物体的小任务,今天来做下总结。 首先介绍下整个Yolov8检测的步骤吧,安装库那些就不讲了。 这是我的文件包的对象树。 有images包,里面装了训练和验证的图像。 labels包,装了标注好的labels的txt文件&…...
![](https://www.ngui.cc/images/no-images.jpg)
水水水水水水
为了拿推广卷,但不想把我原本完整的文章拆成零散的多篇,只能出此下策随便发一篇,认真写的都笔记专栏里 网络技术:数字时代的基础设施 在当今社会,网络技术无疑是推动现代生活和经济发展的核心动力之一。从简单的信息传…...
![](https://i-blog.csdnimg.cn/direct/d617d6f9daa44591bca3d501d1e2cb28.png)
XS5037C一款应用于专业安防摄像机的图像信号处理芯片,支持MIPI和 DVP 接口,内置高性能ISP处理器,支持3D降噪和数字宽动态
XS5037C是一款应用于专业安防摄像机的图像信号处理芯片,支持MIPI和 DVP 接口,最 大支持 5M sensor接入。内置高性能ISP处理器,支持3D降噪和数字宽动态。标清模拟输出支 持960H,高清模拟输出支持HDCCTV 720P/1080P/4M/5M。高度集成…...
![](https://www.ngui.cc/images/no-images.jpg)
机器学习无处不在,AI顺势而为,创新未来
机器学习无处不在: 1、推荐广告和搜索:推广搜不分家,属于数据科学中,对人的行为进行理解 2、计算机视觉CV:对人看到的东西进行理解 3、自然语言处理:对人交流的东西进行理解 4、数据挖掘和数据分析&…...
![](https://www.ngui.cc/images/no-images.jpg)
pandas处理json的相关操作
Pandas 是一个强大的数据处理库,它提供了丰富的功能来处理 JSON 数据。以下是 Pandas 中处理 JSON 的所有常见操作: 1. 读取 JSON 文件 使用 pandas.read_json() 函数可以从 JSON 文件或 JSON 字符串中读取数据。 从 JSON 文件读取 import pandas as …...
![](https://www.ngui.cc/images/no-images.jpg)
linux内存泄露定位过程(kmemleak和slab debug)
1,当遇到内存增加过多时,或者由于内存导致系统oom时我们怎么定位呢,定位时需要确认是内核态还是用户态内存泄露。 排查步骤 top查看VIRT和RES内存 rootubuntu2004:~# top top - 21:05:39 up 7 min, 1 user, load average: 5.01, 4.09, 2.…...
![](https://www.ngui.cc/images/no-images.jpg)
2025年安卓面试复习总结
文章目录 深入理解并熟练运用常用设计模式及反射原理,能够自定义注解及泛型,多次通过设计模式对 app 代码进行高效重构,显著提升代码的可维护性与扩展性。设计模式自定义注解泛型Kotlin泛型 精通多线程原理,对 ThreadPoolExecutor…...
![](https://www.ngui.cc/images/no-images.jpg)
JS scrollIntoView 技巧揭秘:解锁网页流畅交互
文章目录 一.基本概念二.语法和参数基本语法:element.scrollIntoView();参数详解: 三.应用场景和示例场景一:点击目录点位到相应的位置React 示例代码:Vue3 示例代码: 场景二:轮播图定位到指定图片示例代码…...
![](https://img-blog.csdnimg.cn/img_convert/d055acbe7d27cdd2721c4a7019fd8180.png)
网站优化套餐/手机搜索引擎排行榜
面试前的准备 老实说,我自己平常没事就会看一些面试题,所以我都是直接去面的。不过我还是要建议大家如果准备面试的话,需要做以下准备 背题:看一看最近的面经文,了解现在公司都在面什么类型的题,准备一些常…...
![](https://img-blog.csdnimg.cn/img_convert/09b9bbfb3c9c8e72bc34bb0feaa469bf.gif)
做网站主播要什么条件/小说搜索风云榜排名
苯四乙酸 cas1820793-31-4 齐岳中间体|单体材料 英文名称: NA 中文名称: 苯四乙酸 MF: C14H14O8 MW: 310.26 CAS: 1820793-31-4 氟代功能单体53 丙烯酸三氟乙酯 407-47-6 TFEA 58519-06-5 甲基丙烯酸2,2,2-三氟…...
![](/images/no-images.jpg)
上海建站提供商/西安百度竞价托管
(内容包括Python语法概述,流程控制,条件表达式)1 Python语法1.1 Python的特点Python是一种完全面向对象的、解释性的、可移植的、开源的脚本编程高级语言,具有丰富的库,允许边写边执行。他完全支持继承、重载,强大的第…...
![](http://img1.ph.126.net/CuPHpi-Awlw1VY2VuOyzGw==/6631991355466679071.png)
wordpress邮箱订阅/企业seo
1、使用UltraISO 导入ISO文件。2、然后在硬盘中点击setup安装。3、http://jingyan.baidu.com/article/fea4511a72fa38f7ba912574.html...
![](https://images2018.cnblogs.com/blog/363274/201807/363274-20180727174427461-488000052.png)
建设网站电脑配置/十大计算机培训学校
讲一个项目常见的功能,友盟统计功能 例如一个项目有很多多modlue,每个里面modlue都有Activity,Activity需要友盟统一,Fragment也需要友盟统计。一般做法就是继承一个BaseActivity,BaseFragment。 然后在BaseActivity,BaseFragment大概是这样的…...
![](/images/no-images.jpg)
上海招聘网官方网站/网站建设推广多少钱
第2版前言操作系统是现代计算机系统中最重要的系统软件,它控制和管理计算机系统的所有硬件和软件资源,并为用户使用计算机提供一个友好的工作环境。计算机操作系统不仅是计算机专业的必修课程,也是从事计算机应用的人员必不可少的专业知识。L…...