`
wangfeiaini
  • 浏览: 54831 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

go语言基础总结

阅读更多
// second
//以下代码不可以直接使用,go语言中凡是声明过的变量都要使用,否则会报错
//以下代码只是go语言基础总结,包括了从变量声明到switch分支
package main

import (
	"fmt"
)

//声明常量
const (
	i            = 0
	s     string = "Test"
	Start string = "go语言开始" //首字母大写的变量是公有的(待验证)
)

//声明一组全局变量
var (
	k    int
	s2   string
	flag bool
)

//枚举类型iota关键字,默认是0,每次自动增长1
const (
	p1 = iota //p1=0
	p2 = iota //p2=1
	p3        //p3=2
	p4        //p4=3
)

func testMap() {
	var mp map[string]int       //声明一个map
	mp2 := make(map[string]int) //map的另一种声明方式
	mp2["one"] = 1
	mp2["two"] = 2          //给map赋值
	fmt.Println(mp2["two"]) //将key two对应的值打印出来
	//map是无序的,每次打印都不一样,只能通过key获取。内置方法len返回map的key的数量
	mp2["one"] = 10 //将one 对应的值改为10
	m3 := mp2
	m3["two"] = 4                            //此时mp2的mp2["two"]变为4
	delete(mp2, "one")                       //删除key为one的元素
	rating := map[string]int{"1": 2, "2": 3} //初始化一个字典
}

//goto语句
func testGoto() {
	i := 0
Here: //声明一个跳转标签
	fmt.Println(i)
	if i < 10 {
		i++
		goto Here //跳转到标签处
	}
}

//for语句
func testFor() {
	var s [10]int
	for j := 0; j < len(s); j++ {
		s[j] = j //数组负责
	}
	for j := 0; j < len(s); j++ {
		fmt.Println(s[j]) //打印出数组的每一个值
	}
	//for+if语句
	for i := 0; i < 100; i++ {
		if i%3 == 0 && i%5 != 0 {
			fmt.Println("Fizz")
		} else if i%5 == 0 && i%3 != 0 {
			fmt.Println("Bizz")
		} else if i%15 == 0 {
			fmt.Println("FizzBizz")
		} else {
			fmt.Println(i)
		}

	}
	//打印出金字塔形的A
	for i := 1; i <= 100; i++ {
		for j := 1; j <= i; j++ {
			fmt.Printf("%s", "A")
		}
		fmt.Println()
	}
}

//遍历map
func eachMap() {
	mp2 := make(map[string]int) //map的另一种声明方式
	mp2["one"] = 1
	mp2["two"] = 2
	for k, v := range mp2 {
		fmt.Println("key:", k)
		fmt.Println("val:", v)
	}
	//只输出map的值
	for _, v := range mp2 {
		fmt.Println("val:", v)
	}
}

//switch语句
func testSwitch() {
	index := 4
	switch index {
	case 4:
		fmt.Println("hello 4")
		fallthrough //强制执行后面的语句
	case 5:
		fmt.Println("hello 5")
	default:
		fmt.Println("继续测试")
	}
}

//首字母大写的方法是公共方法,
func Test() {
	var arr [10]int //声明一个长度为10的整形数组
	arr[0] = 10     //赋值
	arr[1] = 20
	arr2 := [3]int{1, 2, 3}                              //声明一个长度为3的整形数组并赋值
	arr3 := [...]int{2, 3, 4}                            //动态声明一个数组
	doubleArray := [2][2]int{[2]int{1, 2}, [2]int{3, 4}} //声明一个二维数组
	easyDouble := [2][2]int{{1, 2}, {2, 3}}              //二维数组的另一种声明方式,内外类型一致
	var fslice []int                                     //声明一个切片,和数组相比去掉了长度
	sslice := []byte{1, 2, 3, 4}                         //声明并初始化一个切片
	tslice := arr2[0:2]                                  //切片包含数组arr2中的arr[0],arr[1],切片声明arr[n:m],包含的元素为从arr[n到arr[m-1]
	fmt.Println("测试")
}

//首字母小写的方法是私有方法
func test() {
	fmt.Println("测试")
}

 

分享到:
评论

相关推荐

    Go语言15套教程(百度网盘)

    ### Go语言15套教程知识点概述 #### 01 Go语言基础(一) - **Go语言简介**:介绍Go语言的发展历史、设计理念及其优势特点。 - **环境搭建**:指导如何在Windows/Linux/MacOS环境下安装Go语言环境,并配置环境变量...

    GO语言教程学习 go语言语言介绍总结全攻略.docx

    一、Go语言基础入门 章节知识点目录 1.Go语言简介与环境搭建 2.Go语言基本语法 3.数据类型与变量 4.常量与表达式 5.控制结构(条件语句与循环语句) 重点内容 Go语言简介与环境搭建:介绍Go语言的起源、特点(如...

    Go语言圣经,golang学习入门到精通

    Go语言,又称Golang,是由Google开发的一种静态类型的、编译型的、并发型的、垃圾回收的语言。它旨在提高编程效率,简化并发编程,并强调简洁的编程哲学。Go语言的设计受到了多门经典编程语言的影响,如C语言、...

    go语言编程,Go语言程序设计(英文版),学习 Go 语言(Golang),golang-china读书笔记

    - 这部分可能包含了社区成员对于Go语言的学习心得和实践总结,可能涵盖了一些高级主题,如性能优化、测试策略和项目构建。 通过深入学习这些知识点,无论是初学者还是经验丰富的开发者,都能更好地掌握Go语言,...

    Go语言高级编程

    书的附录部分提供了Go语言常见问题的总结、参考资料以及作者柴树杉的简介,这些都是读者在深入学习Go语言时可以参考的重要信息。 本书《Go语言高级编程》适合已经有Go语言基础,希望通过高级主题进一步提升技能的...

    Go语言101.pdf版

    目录1:Go语言基础概念 * 第1章:关于Go语言101 - 为什么写这本书 * 第2章:致谢 * 第3章:Go语言简介 - 为什么Go语言值得学习 * 第4章:Go官方工具链 - 如何编译和运行Go程序 * 第5章:程序源代码基本元素介绍 * ...

    Go语言中常用的基础方法总结

    Go语言中常用的基础方法总结

    Golang语言基础超详细教程&备忘录

    ### Golang语言基础知识点详解 #### 一、Golang简介 **起源与发展:** - **时间线:**Go编程语言的开发始于2007年,并于2009年正式发布,是一款开源项目。 - **目标:**旨在提高软件开发者的编程效率,确保在不...

    手撕Go语言v1.1.pdf

    Go语言(又称Golang)是一种静态类型的编程语言,由Google工程师Robert Griesemer、Rob Pike及Ken Thompson在2007年开始设计并开发,于2009年正式发布。它被设计成一种简洁、高效且易于学习的语言,旨在解决现代软件...

    Go语言最佳入门手册

    这一章节总结了Go语言的基础知识,为后续深入学习奠定了基础。 #### 二、安装与运行环境 **2.1 平台与架构** Go语言可以在多种操作系统上运行,包括Linux、macOS以及Windows等。对于不同的操作系统,Go语言提供了...

    go语言学习.zip

    go语言基础入门学习文档以及go语言并发学习的一些案例总结,我是一个两年多的Java开发工程师,从18年开始,开始接触容器化kubernetes这一块的项目,一开始是做了一个Java对接k8s启动pod,管理pod的平台。今年决定对...

    Python到Go语言之路

    总结起来,本文通过作者个人的经历,展示了一名Python开发者如何通过阅读文档、实践项目以及学习相关资源,成功地将Go语言融入到自己的技术栈中。作者强调了在学习Go时需要注意的几个关键点,并提供了一系列的学习...

    Go语言基础、进阶、提高课程 第十三节 Go语言结构体1

    总结一下,Go语言中的结构体提供了组合不同类型数据的能力,是构建复杂数据模型的基础。通过结构体,我们可以创建表示现实世界对象的类,如书籍、用户账户等。在实际编程中,结构体广泛应用于数据存储、数据库交互、...

    Go语言技术参考手册.docx

    - **背景**: Go语言,又称Golang,是由Google的Robert Griesemer、Rob Pike及Ken Thompson开发的一种静态强类型、编译型语言。 - **特点**: - 内存安全 - 垃圾回收(GC) - 结构形态 - CSP-style并发计算 - **...

    Go语言的基础知识文档.doc

    **Go语言**,简称**Golang**,自2009年发布以来迅速成为开发高性能、可扩展后端服务的首选语言之一。它之所以能在众多编程语言中脱颖而出,主要得益于以下几个方面: 1. **更小的资源开销与更快的启动速度** - **...

    Go语言基础语法和安装部署相关教程

    Go语言,也称为Golang,由Google的Robert Griesemer、Rob Pike和Ken Thompson于2007年开始设计并开发。该语言的设计目标是解决大型项目在开发过程中的复杂性以及维护过程中的效率问题。Go语言于2009年11月正式对外...

    Go语言快速入门 视频教程,10天学会GO,学GO这个就够了

    - 本视频教程旨在帮助初学者快速掌握Go语言的基础知识。 - 内容覆盖了Go语言的基本语法、数据类型、控制结构等核心概念。 - 通过本教程的学习,学员可以在较短时间内建立起对Go语言的理解框架。 #### 知识点3:10天...

    go语言基础.xmind

    自己总结的go语言基础的笔记,绘制了详细的思维导图,每个思维导图中均有详细的博文解释,方便大家学习和理解,免费分享给大家。

Global site tag (gtag.js) - Google Analytics