go语言--基础知识

基础知识

语言特点:

  1. 兼具 Python 等动态语言的开发速度和 C/C++ 等编译型语言的性能与安全性
  2. 不但能让你访问底层操作系统,还提供了强大的网络编程并发编程支持
  3. 通过接口(interface)的概念来实现多态性
  4. Go语言正是在多核和网络化的时代背景下诞生的原生支持并发的编程语言

go擅长:

  1. 鉴于Go语言的特点和设计的初衷,从以下几个方面来分析Go语言擅长的领域:
  2. 在服务器编程方面,Go语言适合处理日志数据打包虚拟机处理文件系统分布式系统数据库代理等;
  3. 网络编程方面,Go语言广泛应用于 Web 应用、API 应用、下载应用等;
  4. 用于内存数据库和云平台领域,目前国外很多云平台都是采用 Go 开发。

第一个程序“HELLO WORLD":

Package main
Import "fmt"
 
Func main(){
Fmt.Printf("Hello,World")
}
 

异同于其他语言的特征:

  1. 函数差异,实例如下图所示:
    在这里插入图片描述
    1)这个import(导入包)就和python的import一样,你也可以使用如下这样的格式:
    在这里插入图片描述
    还有如果你想导入包内的某个函数要使用**“/”符号**,而不是python的“.”,如上图所示:
    在这里插入图片描述
    这样使用函数的时候直接使用,rand就好了,而不必使用是math.rand()

    2)golang需要指明参数类型,但是如果连续的参数的类型是一样的话,前面的都可以不用说明,直接说明最后一个即可,如下图所示:
    在这里插入图片描述

    3)这个就有点东西了,很少见语言这样做的,直接指明返回值的类型,这个作用不仅可以有多个返回值,还可以为每个返回值命名,如下图所示:
    在这里插入图片描述
    在这里插入图片描述

  2. 命名变量的不同:
    在这里插入图片描述
    1)变量的定义通常是这个形式:
    以var开头有点像js,var 变量名 类型 = 赋值
    2)在函数中,“:=” 简洁赋值语句在明确类型的地方,可以用于替代 var 定义。 函数外的每个语句都必须以关键字开始(var、func、等等),:= 结构不能使用在函数外。
    3)如上所说,如果在函数内,明确类型的可以直接用这个。

  3. 循环结构:
    在这里插入图片描述
    除了没有()其他几乎和其他语言无差

  4. 判断结构
    在这里插入图片描述
    1)这里是不需要加()的
    2)这里可以执行一个简单的语句,(如果是变量的话,只能在这个判断结构中起作用
    3)作用范围是有限的。

  5. defer结构
    在这里插入图片描述
    就会输出下列结构:
    在这里插入图片描述
    延迟的函数调用被压入一个栈中。当函数返回时, 会按照后进先出的顺序调用被延迟的函数调用。

  6. 结构体:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

发布了43 篇原创文章 · 获赞 7 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_42224330/article/details/104469555