当前位置: 首页 > news >正文

golong基础相关操作--一

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

package main//go语言以包作为管理单位,每个文件必须先声明包
//程序必须有一个main包
// 导入包,必须要要使用
// 变量声明了,必须要使用
import ("fmt"
)/*
*
包内部的变量
*/
var aa = 3var ss = "kkk"var bb = truevar (aaa = 3sss = "kkk"bbb = true
)/*
*
定义变量 必须有值
*/
func variableZeroValue() {var a intvar s stringfmt.Printf("%d %q\n", a, s)
}/**
变量赋值
*/func variableInitialValue() {var a, b int = 3, 4var s string = "abc"fmt.Println(a, b, s)
}func variableTypeDeduction() {var a, b, c, s = 3, 4, true, "def"fmt.Println(a, b, c, s)
}func variableShorter() {a, b, c, s := 3, 4, true, "def" //自动推到类型,必须初始化,%T打印变量所属的类型b = 5fmt.Println(a, b, c, s)
}func test() (a, b, c int) {return 1, 2, 3
}/**
数据类型作用:告诉编译器这个变量应该以多大的内存存储
*/
// 一个文件夹里面只有一个main文件
func main() {//fmt.Println("hello world")//variableZeroValue()//variableInitialValue()//variableTypeDeduction()//variableShorter()//fmt.Println(aa, ss, bb)//fmt.Println(aaa, sss, bbb)//交换2个变量////a, b := 10, 20//a, b = b, a//fmt.Println(a, b)//var (//	e int//	c int//	d int//)匿名变量,丢弃数据不处理,_匿名变量配合函数返回值使用,才有优势//e, c, d = test()//fmt.Println(e, c, d) 常量:程序运行期间,不可以改变的量,常量声明需要const////const f int = 10//f = 20; 常量不允许赋值,不允许修改//fmt.Println("f= ", f)////const g = 10 //没有使用:= 不允许使用//fmt.Println("g= ", g)//多个变量或常量定义var a1 intvar b1 float64a1, b1 = 10, 3.14////var (//	a1 int//	b1 float64//)//a1, b1 = 10, 3.14//fmt.Println(a1, b1)//const i int = 10const j float64 = 3.14//const (	i int = 10	j float64 = 3.14)////const (//	i = 10//	j = 3.14 // 可以自动推导类型//)//fmt.Println(i, j)// iota常量自动生成器,每个一行,自动累加1 iota给常量赋值使用//const (//	a2 = iota//	b2 = iota//	c2 = iota//)////fmt.Printf("a2 = %d, b2 = %d, c2 = %d\n", a2, b2, c2)3 iota遇到const,重置为0//const d2 = iota//fmt.Printf("d2 = %d\n", d2)// 可以只写一个iota//const (//	a3 = iota//	b3//	c3//)//fmt.Printf("a3 = %d, b3 = %d, c3 = %d\n", a3, b3, c3)//如果是同一行,值都一样//const (//	a4         = iota//	b4, b5, b6 = iota, iota, iota//	c4         = iota//)//fmt.Printf("a4 = %d, b4 = %d, b5 = %d, b6 = %d, c4 = %d\n", a3, b4, b5, b6, c4)///类型分类 bool 类型 int8 这里的8代表8位//var boolean1 bool//boolean1 = true//fmt.Println("boolean1 = ", boolean1)////var float3 float32//float3 = 3.14//fmt.Println("float = ", float3)//float4 := 3.124//fmt.Printf("float4 = %T\n", float4)// float64存储小数比float32更准确,15小数点,7为小数点//字符类型//var ch byte //声明字符类型//ch = 97格式化输出,%d以字符方式打印//fmt.Printf("ch = %c, %d\n", ch, ch)////ch = 'a' //字符单引号//fmt.Printf("ch = %c, %d\n", ch, ch)//大写转小写,小写转大写//str := "mike"//内建函数,len可以测字符串的长度,有多少个字符 len(str) =  4//fmt.Println("len(str) = ", len(str))//复数类型//var t complex128//t = 2.1 + 3.14i//fmt.Println("t = ", t) //t =  (2.1+3.14i)//内建函数,取实数和虚数//fmt.Println("readl(t)=", real(t), "imag(t)=", imag(t)) //readl(t)= 2.1 imag(t)= 3.14//var inta int//fmt.Println("请输入变量a: ")阻塞等待用户的输入//fmt.Scanf("%d", &inta) //或者fmt.Scan(&a)//fmt.Println("a = ", inta)//类型转换var flag boolflag = true//bool 类型不能转换为int//fmt.Printf("flag = %d\n", int(flag)) //%!d(bool=true)fmt.Printf("flag = %t\n", flag) //%!d(bool=true)// 0就是假 非0就是真// 整型也不能转换为bool 这种不能转换的类型,叫不兼容类型//flag = 1//类型转换,把ch的值取出来后转出int再给t赋值var ch bytech = 'a' //字符类型本质上就是整型var t intt = int(ch)fmt.Println("t = ", t)// 类型别名 给int64起一个别名叫biginttype bigint int64var a1 bigintfmt.Printf("a1 = %T\n", a1) //a1 = main.biginttype (long int64char byte)//运算符fmt.Println("f>3", 4 > 3)//if语句s := "王思聪"//if和{就是条件,条件通常就是关系运算符if s == "王思聪" {fmt.Println("左手一个妹子,右手一个校花")}//if支持1个初始化语句 初始化语句和判断条件以分号分隔if a := 10; a == 10 {fmt.Println("a==10")}//多个分支 if elses1 := 11if s1 == 0 {fmt.Println("a==10")} else {fmt.Println("a!=10")}//var num int//fmt.Printf("请按下楼层:")//fmt.Scan(&num)////switch num { //switch后面写的是变量本身//case 1://	fmt.Println("按下的是1楼\n")//	//fallthrough //不跳出switch语句,后面的无条件执行//	//break //go语言保留break字,跳出switch语句,不写,默认就包含了//case 2://	fmt.Println("按下的是2楼\n")//	//fallthrough//	//break//case 3://	fmt.Println("按下的是3楼\n")//	//fallthrough//	//break//case 4://	fmt.Println("按下的是4楼\n")//	//fallthrough//	//break//default://	fmt.Println("按下的是xxx楼")//}//score := 85//switch {//case score > 90://	fmt.Println("优秀")//case score > 80://	fmt.Println("优秀")//case score > 70://	fmt.Println("优秀")//}////sum := 0for循环使用 1 初始化条件,2 判断是否为真,如果为真,执行循环体,如果为假跳出循环 3 条件变化i++ 4 重复2,3 4//for i := 1; i <= 100; i++ {//	fmt.Println("i=", i)//	sum = sum + i//}//fmt.Println("sum = ", sum)////strr := "abc"range 迭代打印每个元素,默认返回2个值 一个是元素的位置,一个是元素本身//for i, data := range strr {//	fmt.Printf("str[%d] = %c\n", i, data)//}//range 第二个返回值,默认丢弃,返回元素的位置(下标)//for i, _ := range strr {//	fmt.Printf("str[%d] = %c\n", i, strr[i])//}////i1 := 0//for { //for后面不写任何东西,这个循环条件永远为真,死循环//	i1++//	time.Sleep(time.Second) //延时1s//	if i1 == 5 {//		break //跳出循环,如果嵌套多个循环,跳出最近的那个内循环//		//continue //跳过本次循环,下一次继续//	}//	fmt.Println("i= ", i1)//}//goto可以用在任何地方,但是不能跨函数使用fmt.Println("111111111111")goto End //goto是关键字,End是用户起的名字,他叫标签fmt.Println("222222222222")
End:fmt.Println("33333333333333")
}

相关文章:

golong基础相关操作--一

package main//go语言以包作为管理单位&#xff0c;每个文件必须先声明包 //程序必须有一个main包 // 导入包&#xff0c;必须要要使用 // 变量声明了&#xff0c;必须要使用 import ("fmt" )/* * 包内部的变量 */ var aa 3var ss "kkk"var bb truevar …...

【深度学习】基于卷积神经网络的铁路信号灯识别方法

基于卷积神经网络的铁路信号灯识别方法 摘 要&#xff1a;1 引言2 卷积神经网络模型2.1 卷积神经网络结构2.2.1 卷积层2.2.2 池化层2.2.3 全连接层 3 卷积神经网络算法实现3.1 数据集制作3.2 卷积神经网络的训练过程3.2.1 前向传播过程 4 实验5 结语 摘 要&#xff1a; 目前中…...

DR IP-SoC China 2023 Day演讲预告 | 龙智Perforce专家解析芯片开发中的数字资产管理

2023年9月6日&#xff08;周三&#xff09;&#xff0c;龙智即将亮相于上海举行的D&R IP-SoC China 2023 Day&#xff0c;呈现集成了Perforce与Atlassian产品的芯片开发解决方案&#xff0c;助力企业更好、更快地进行芯片开发。 D&R IP-SoC China 2023 Day 是中国首个…...

解决github连接不上的问题

改 hosts 我们在浏览器输入 GitHub 的网址时&#xff0c;会向 DNS 服务器发送一个请求&#xff0c;获取到 GitHub 网站所在的服务器 IP 地址&#xff0c;从而进行访问。 就像你是一名快递员&#xff0c;在送快递前要先找中间人询问收件人的地址。而 DNS 就是这个告诉你目标地址…...

# DevOps名词定义梳理

DevOps名词定义梳理 极限编程座右铭&#xff1a;如果它令你很受伤&#xff0c;那么就做更多的练习&#xff08;If it hurts, do it more often&#xff09; 经常人们会把这些名词用错&#xff1a; 构建&#xff1a;就是把源代码制成成品的过程&#xff0c;这个过程一般会有单元…...

Redis Cluster

文章目录 一、集群搭建1 节点规划2 集群启动 二、配置一致性1 基本分工2 更新规则 三、Sharding1 数据分片分片实现分片特点 2 slot迁移迁移原因迁移支持集群扩容迁移错误背景现象问题分析验证猜想 集群缩容 3. 请求路由client端server端migrating节点的读写importing节点的读写…...

Pandas常用指令

astype astype的作用是转换数据类型&#xff0c;astype是没办法直接在原df上进行修改的&#xff0c;只能通过赋值的形式将原有的df进行覆盖&#xff0c;即df df.astype(dtype) astype的基本语法 DataFrame.astype(dtype, copyTrue, errorsraise) dtype参数指定将数据类型转换…...

FPGA实战小项目3

基于FPGA的波形发生器 基于FPGA的波形发生器 基于FPGA的beep音乐播放器设计 基于FPGA的beep音乐播放器设计 基于FPGA的cordic算法实现DDS sin和cosine波形的产生 基于FPGA的cordic算法实现DDS sin和cosine波形的产生...

mysql创建用户

创建用户 创建 -- 创建用户 itcast , localhost只能够在当前主机localhost访问, 密码123456; create user test01localhost identified by 123456;使用命令show databases;命令&#xff0c;只显示一个数据库&#xff0c;因为没有权限 -- 创建用户 test02, 可以在任意主机访问…...

程序员写好简历的5个关键点

程序员就业竞争大&#xff1f;找不到工作&#xff1f;也许&#xff0c;从简历开始你就被淘汰了.... 在很多的公司中&#xff0c;HR的招聘压力是很大的&#xff0c;浏览每个人的简历的时间可能只有20几秒&#xff0c;所以即使你的工作能力十分的强&#xff0c;但如果你没有在简…...

Vue:关于如何配置一级路由和二级路由的方法

路由的嵌套配置 文章目录 路由的嵌套配置配置一级路由 配置一级路由 创建router文件夹&#xff0c;里面添加index.js文件配置以下代码&#xff1a; import Vue from vue import VueRouter from "vue-router"; import Layout from /views/Layout import ArticleDeta…...

【论文绘图】seaborn分类数据绘图

参考&#xff1a;https://seaborn.pydata.org/tutorial/categorical.html 分类变量关系图中的catplot类似于连续变量中的relplot&#xff0c;默认是stripplot。 分类变量图种类 分类散点图 stripplotswarmplot (kind‘swarm’) 类别分布图 boxplotviolinplotboxenplot …...

KubeSphere Namespace 数据删除事故分析与解决全记录

作者&#xff1a;宇轩辞白&#xff0c;运维研发工程师&#xff0c;目前专注于云原生、Kubernetes、容器、Linux、运维自动化等领域。 前言 2023 年 7 月 23 日在项目上线前夕&#xff0c;K8s 生产环境出现故障&#xff0c;经过紧急修复之后&#xff0c;K8s 环境恢复正常&#…...

mysql场景题:最近7天连续3天登陆用户,字段,id,date(已去重)

1.最近7天连续3天登陆用户&#xff0c;字段&#xff0c;id&#xff0c;date&#xff08;已去重&#xff09; 思路&#xff1a; lag对时间开窗&#xff08;注意时间得转换为时间戳&#xff08;int类型才可以添加后续条件&#xff09;&#xff0c;跳行为2&#xff08;连续3天&am…...

华为OD机试 - 最差产品奖 - 双端队列 deque(Java 2023 B卷 200分)

目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;A卷B卷&#…...

【校招VIP】前端算法考察之链表算法

考点介绍&#xff1a; 链表是一种物理存储结构上非连续的数据结构,数据的逻辑顺序是通过链表中的指针链接次序实现相互勾连。链表相对数组而言有很多不同之处,在特定场景下能发挥独特的优势。例如链表的插入和删除操作比数组效率高,数组需要改变其他元素的位置,而链表只需要改变…...

uni-app之android离线自定义基座

一 为什么要自定义基座 1&#xff0c;基座其实就是一个app&#xff0c;然后新开发的页面可以直接在手机上面显示&#xff0c;查看效果。 2&#xff0c;默认的基座就是uniapp帮我们打包好的基座app&#xff0c;然后我们可以进行页面的调试。 3&#xff0c;自定义基座主要用来…...

【AWS】实操-保护 Amazon S3 VPC 终端节点通信

文章目录 实验概览目标实验环境任务 1&#xff1a;探索并启动实验环境任务 1.1&#xff1a;探索 Amazon VPC 资源任务 1.2&#xff1a;探索 Amazon EC2 资源任务 1.3&#xff1a;创建 Amazon VPC 终端节点任务 1.4&#xff1a;连接私有 EC2 实例任务 1.5&#xff1a;探索 Amazo…...

C# Color颜色RGB对照表

序号Color色系颜色RGB图例1Color.AliceBlue蓝色艾丽丝蓝240,248,2552Color.AntiqueWhite白色古典白色250,235,2153Color.Aqua&#xff0c;Color.Cyan青色浅蓝色&#xff0c;蓝绿色&#xff0c;青色0,255,255 C# Color颜色RGB对照表_旭东怪的博客-CSDN博客 C#颜色和名称样式对照…...

Thread中几个常用的api详解join,interrupt

1.join() join方法可以在多线程中帮我们实现调用线程的同步效果&#xff0c;比如&#xff0c;现在有三个线程&#xff0c;a&#xff0c;b&#xff0c;c a中启动了b和c线程异步去执行一件事&#xff0c;但是a希望他们做完以后再继续往下执行&#xff0c;那么就可以在调用b和c启…...

基础测试工具使用经验

背景 vtune&#xff0c;perf, nsight system等基础测试工具&#xff0c;都是用过的&#xff0c;但是没有记录&#xff0c;都逐渐忘了。所以写这篇博客总结记录一下&#xff0c;只要以后发现新的用法&#xff0c;就记得来编辑补充一下 perf 比较基础的用法&#xff1a; 先改这…...

基于数字孪生的水厂可视化平台建设:架构与实践

分享大纲&#xff1a; 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年&#xff0c;数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段&#xff0c;基于数字孪生的水厂可视化平台的…...

视频字幕质量评估的大规模细粒度基准

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用&#xff0c;因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型&#xff08;VLMs&#xff09;在字幕生成方面…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

AspectJ 在 Android 中的完整使用指南

一、环境配置&#xff08;Gradle 7.0 适配&#xff09; 1. 项目级 build.gradle // 注意&#xff1a;沪江插件已停更&#xff0c;推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

Python网页自动化Selenium中文文档

1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API&#xff0c;让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API&#xff0c;你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...

【51单片机】4. 模块化编程与LCD1602Debug

1. 什么是模块化编程 传统编程会将所有函数放在main.c中&#xff0c;如果使用的模块多&#xff0c;一个文件内会有很多代码&#xff0c;不利于组织和管理 模块化编程则是将各个模块的代码放在不同的.c文件里&#xff0c;在.h文件里提供外部可调用函数声明&#xff0c;其他.c文…...

2025.6.9总结(利与弊)

凡事都有两面性。在大厂上班也不例外。今天找开发定位问题&#xff0c;从一个接口人不断溯源到另一个 接口人。有时候&#xff0c;不知道是谁的责任填。将工作内容分的很细&#xff0c;每个人负责其中的一小块。我清楚的意识到&#xff0c;自己就是个可以随时替换的螺丝钉&…...

【PX4飞控】mavros gps相关话题分析,经纬度海拔获取方法,卫星数锁定状态获取方法

使用 ROS1-Noetic 和 mavros v1.20.1&#xff0c; 携带经纬度海拔的话题主要有三个&#xff1a; /mavros/global_position/raw/fix/mavros/gpsstatus/gps1/raw/mavros/global_position/global 查看 mavros 源码&#xff0c;来分析他们的发布过程。发现前两个话题都对应了同一…...