GO语言一(初级入门)

前言:

我有编程基础,可能写的不是和适合初学者,我会慢慢的写完整!

1.1 安装配置GoLand

    大家可以百度,有很多优秀的博客

1.2 输出 

学各种编程语言的套路差不多都是一样,先学输出 ,比如输出"Hello,World!",go语言自然也不例外。如下

package main 

import (
    "fmt"
)

func main() {

        fmt.Println("Hello,World")
    return
}
View Code

 

注:一个独立可执行的 Go 语言程序必须有 package main 声明。此处我也没有过多的深究,当学到一定程度的时候在研究,要不然很难坚持学完,go语言对编程风格比较严格,右括和函数名一行,以后的if for while等,包含函数块的都必须在一行,否则编译器报错,这个可能也是初学时会搞混的。

1.3 常量与变量

变量:定义以后可以修改的,比如我锻炼身体,我今天锻炼了20min,明天可能没有锻炼,后天可能锻炼100min。

常量:也就是不能修改的变量,比如你自己的血型,基因都是固定的,没有办法可以修改的。

个人浅见,常量是不能修改的,所以定义了必须赋值,也就是人出生以后血型已经固定了,而变量则所谓。我是从c语言半路学的go语言,c语言中指针定义了最好赋值,要不然乱指可就不好了,我还没有学到go语言的指针,先不讨论。

1.3.1 变量

 学习变量之前,我们再看下刚才的输出的函数(图1),里面的函数是接口(此处指的是什么类型都支持,可以放各种类型)我们学习变量,也就是从基础数据类型开始学,我们不用这个函数(图2),这个函数可以按照格式输出后面的接口。现在我们开始来操作吧!

 图:1 

      图:2

 

 

 开始学编程语言的宝宝不能贪多,数据类型不要研究的很深入,一开始会用就好了,然后再去研究在内存怎么存储的。

package main

import "fmt"

func main() {
    // 基础数据类型
    var a int = 1
    fmt.Printf("%d",a)
}
View Code

 

可以先试着敲下这段代码,编译执行下看看结果是不是打印出来了1。我

int  是一种数据类型,只能存放整数的,也就是自然数(....-3,-2-,10,1,2,3,4,5,6,..)%d是整形占位符,先把这个位置占下,当printf(""%d),执行完后,变量a就开始插进去,然后实现输出1,一开始学的不能操之过急,此处a就是一个变量,我们来修改试试看看

package main

import "fmt"

func main() {
    // 基础数据类型
    var a int = 1
    fmt.Printf("%d\n",a)

    a = 2
    fmt.Printf("我是a 我被发生改变了 %d\n",a)
}
View Code

我是a 改变了了会原样打印出来,因为没有占位符自然原样打印出来。

刚才的代码我们新学了几种我们再来学习几种数据类型吧,也是常用的数据类型!

float 浮点型 --占位符%f

string  字符串 --%s

int32  字符型 --%c

package main

import "fmt"

func main() {
    // 基础数据类型
    var a int = 1
    var b float32 = 1.2
    var c float64 = 2.4
    var d string = "我是龙玉"
    var e int32= ''

    fmt.Printf(" a = %d\n b= %f\n c = %f\n d = %s\n e= %c",a,b,c,d,e)

}
View Code

 

go的编译器可以自动判断出类型,在定义的时候可以省略类型,%T可以自动识别出变量的类型,我们来操作看看吧 如下 

package main

import "fmt"

func main() {

    var a = 1
    b := 2

    fmt.Printf("a 的数据类型 %T,b的数据类型 %T",a,b)

}
View Code

这段代码,大家敲下,看看结果,我们又学了两种定义变量的方式,这两种都可以,这个我认为没啥技术含量在里面,毕竟是编译器识别做的事情多,我并不建议这样做,我认为还是常规的方式好,对于大家回头看自己代码也会有好处。

变量马上到尾声,最后介绍一个泛型占位符(可以理解为万能占位符 )%v

package main

import "fmt"
/*
  我是main 函数 我是注释
*/

func main() {

    var name string = "龙玉"
    var age int = 25

    fmt.Printf("My name is %v,My age  is %v",name,age)// 我是注释 我不会被打印

}
View Code

在代码中,顺便加入了注释的方法// /**/ ,注释不会被打印,也不会占用代码的大小,我们在来分析下这段代码,string ,age 是不是都自动识别了那!

在来说下注释的作用吧,如下是我工作中经常用的注释 ,涉及到函数后面讲解。关于变量的基础知识就到这里了。接下来开始常用

 

 1.3.2 常量

package main

import "fmt"

/*
  我是main 函数 我是注释
*/

func main() {

    const PI = 4.14
    

    fmt.Println(PI)

}

常量定义,可以不使用,编译器是不会报错的 如果试图修改常用,则是会报错的,不被允许的。

注:var 是定义变量的 不用var 关键字

在c语言中有一个枚举的说法,在go语言中,也有一个关键字:itoa 可以实现常量组。

默认值从0开始 

package main

import "fmt"

/*
  我是main 函数 我是注释
*/

func main() {

    // iota的初始值为零
    const (
        Monday = iota + 1

        /*自动延用排头兵的表达式,但iota逐一递增*/
        Tuesday
        Wednesday
        Thursday
        Friday
        Saturday
        Sunday)

    fmt.Println(Monday,Sunday)

}
View Code

打印结果如下

 

 1.4数学运算

学完了变量,常量接下来我们开始利用变量常用来进行数学运算 常用的 +-* / %  > < = !等go语言也提供了数学库 等大家学了函数的时候,理解了函数

也就GO语言的API大部分就会调用了

package main

import "fmt"

func main() {

    var a int = 2
    var b int = 2

    var sum int = a + b
    var sub int = a - b
    var miv int = a * b
    var div int = a / b

    fmt.Println("sum = ",sum)
    fmt.Println("sub = ",sub)
    fmt.Println("miv = ",miv)
    fmt.Println("div = ",div)


    return
}
View Code

上面的也就是常规的数学运算 加减乘除,应该不是很难理解,多练习几个就好了。

注:1:定义变量与操作变量的时候最好有一个空行,显得美观

注:2:数据类型不同的进行数学运算,可能与实际结果不是很符合,这个地方大家多试试就好了。

如下贴一个错误代码

package main

import "fmt"

func main() {

    var a float64 = 9
    var b float64 = 3

    var c int  = a / b

    fmt.Println(c)


    return
}
View Code

var c int  = a / b 这个地方为什么报错了那?按常理来说结果应该就是整数,可是我定义的是浮点型 浮点型和浮点型的结果自然也是浮点型

var c int  = (int)a / b在别的编程语言中 可能有强转这个说法,把浮点转化为整型,go语言是不可以的 

注:var c int  = a / b 改为var c float64 = a / b

下面来看%(求余,求mo)也就是数学中的求余数

package main

import "fmt"

func main() {


    var a int = 9
    var b int = 4
    
    var c = a % b

    fmt.Println(c)


    return
}
View Code

结果为1 应该很好理解

注:% 两边必须为整型

> < =  !与bool 类型一起学

bool 类型只有两个值 true 与 false 即为真或者假

fmt.Println(1 > 2) // false
fmt.Println(1 < 2) // true
fmt.Println(1 == 2) // false
fmt.Println(1 != 2) // true
View Code

编程语言中判断等于的时候是== =是赋值不要搞错了奥!

1 > 2 肯定是假 反之为真

1 == 2 为假 反之为真  !表示是非  !=表示不等于  

非真为假 非假为真 

注:整型中 除了0都是真

编程语言一般都是顺序 选择 和顺序三大分支

刚才我们学的都是顺序 ,从上到下,现在开始学顺序和选择分支

----------------------------------------------------------------------------------------------------------------------

完毕 有什么问题 可以联系我 我改正 

大家一起进步奥

 

猜你喜欢

转载自www.cnblogs.com/itxiaoye/p/12759325.html
今日推荐