标识符:
在go语言里,标识符要么从包里公开,要么不从包里公开。
当代码导入一个包时,程序可以直接访问这个包中任意一个公开的标识符。这些标识符以大写字母开头。以小写字母开头的标识符是不公开的,不能被其他包中的代码直接访问的。
运算符与var关键字
:= 和var 关键字没有任何的区别
- 如果声明初始化值为零值的变量,应该使用var关键字声明变量;
- 如果提供准确的非零值初始化变量或者使用函数返回值创建变量,使用简化变量声明运算符。
map 是否包含某个值
// 第一种方式 key, exists := map[type] if !exists { key = map["default"] } // 第二种方式 key:= map[type]
方法的声明与调用
// 方法声明为使用matcher类型的值作为接收者 func (n matcher)Search(feed * Feed, searchTerm string){ return nil,nil } // 声明一个指向macher类型的指针 ma:= new(macher) //编译器会解开ma的指针引用,使用对应的值调用方法 ma.Search(feed,"test") // 方法声明为使用指向matcher类型的指针作为接收者 func (n *matcher)Search(feed * Feed, searchTerm string){ return nil,nil } // 声明一个指向macher类型的指针 var ma macher //编译器会自动生成指针引用ma的值,使用对应的值调用方法 ma.Search(feed,"test")