开始写一个程序声明变量几乎是在完成“hello world”之后第一件要做的事,所以我单独作为一个章节来写。 Go语言的声明变量用var关键词实现,很多语言里也是这样。 var 变量名 类型 var book string var num int 批量声明变量 var { book string num int } 变量初始化 var book string = "php" var book = "php" 在第二种方式里我并没有声明类型,同样可以成功,原因是Go会在编译时根据value自动推导变量类型,但是如果我这么写会怎么样? var book 答案是编译时会报错,因为Go会在编译时根据value推导类型,但前提是你得给个value,这里不同于php,php是弱类型的语言,php在类里定义一个变量的语法是 class A { public $book ; } 变量初始化还有一个更便捷的方法,事实上大多数时候我们只用这种方式,可以用 := book := "php" 但是这种方式有一点要注意,以这种方式声明一个变量必须是该变量第一次出现,举个例子 var book string book := "php" 这样的代码是不被编译器允许的,为什么会写出这样的代码呢?我是一个phper,很自然以为这个符号就是变量赋值语句,其实不然