当前位置: 首页 > news >正文

株洲手机网站建设宁夏正丰建设集团公司联网站

株洲手机网站建设,宁夏正丰建设集团公司联网站,Wordpress双主题,秀色直播怎么下载目录 概述语法for常量与变量数组切片 slice切片问题问题1问题2 Make 和 New结构体和指针结构体标签 结束 概述 从 java 转来学 go &#xff0c;在此记录&#xff0c;方便以后翻阅。 语法 for package mainimport "fmt"func main() {for i : 0; i < 3; i {fmt.…

目录

  • 概述
  • 语法
    • for
    • 常量与变量
    • 数组
    • 切片 slice
      • 切片问题
        • 问题1
        • 问题2
    • Make 和 New
    • 结构体和指针
    • 结构体标签
  • 结束

概述

从 java 转来学 go ,在此记录,方便以后翻阅。

语法

for

package mainimport "fmt"func main() {for i := 0; i < 3; i++ {fmt.Println(i)}fullString := "helloworld"for i, i2 := range fullString {fmt.Println(i, string(i2))}
}

在这里插入图片描述

for-range
遍历数组,切片,字符串,Map 等

常量与变量

变量定义

  • 变量
    • var 语句用于声明一个变量列表
    • 例子:var c,python
  • 变量的初始化
    • 变量声明可以包含初始值,每个变量对应一个
    • 如果初始化值已存在,则可以省略类型;变量会从初始值中获得类型
    • var i,j int =1,2
  • 短变量声明
    • 在函数中,简洁赋值语句:=可在类型明确的地方代替 var 声明
    • 函数外的每个语句都必须以关键字开始(var,func等),因此:=结构不能在函数外使用

数组

  • 相同类型且长度固定连续内存片段
  • 以编号访问每个元素
  • 定义方法
    • var identifier [len] type
  • 示例
    • myArray :=[3]int{1,2,3}

切片 slice

和数组类似的数据结构

  • 切片是对数组一个连续片段的引用
  • 数组定义中不指定长度即为切片
    • var identifier [] type
  • 切片在未初始化之前默认为nil,长度为0
package mainimport "fmt"func main() {myArray := [5]int{1, 2, 3, 4, 5}mySlice := myArray[1:3]fmt.Printf("mySlice %+v\n", mySlice)fullSlice := myArray[:]fmt.Printf("fullSlice %+v\n", fullSlice)var mySlice2 []intmySlice2 = append(mySlice2, 1)mySlice2 = append(mySlice2, 2)mySlice2 = append(mySlice2, 3)fmt.Println(mySlice2)
}

切片问题

问题1
package mainimport "fmt"func main() {var a []intb := []int{1, 2, 3}c := aa = append(b, 1)fmt.Println(c)fmt.Println(a)fmt.Println(b)
}

在这里插入图片描述

append(b,1) 时,会重新分配地址,导致a与c并不相等。

问题2
package mainimport "fmt"func main() {mySlice := []int{10, 20, 30, 40, 50}for _, i2 := range mySlice {i2 *= 2}fmt.Println(mySlice)for i, _ := range mySlice {mySlice[i] *= 2}fmt.Println(mySlice)
}

在这里插入图片描述

注意:go 语言都是值传递

Make 和 New

  • New 返回指针地址
  • Make 返回第一个元素,可预设内存空间,避免未来的内存拷贝

在这里插入图片描述

结构体和指针

  • 通过 type … struct 关键字自定义结构体
  • Go 语言支持指针,但不支持指针运算
    • 指针变量的值为内存地址
    • 示贝佳的指针为 nil
package mainimport "fmt"type IF interface {// 接口里面只能定义行为getName() string
}type Human struct {// 结构体里面只能包含属性firstName, lastName string
}func main() {h := new(Human)fmt.Println(h)fmt.Println(&h)fmt.Println(*&h)
}

在这里插入图片描述

结构体标签

结构体中的字段除了有名字和类型外,还可以有一个可选的标签(tag)

package mainimport "reflect"type MyType struct {Name string `json:"name"`
}func main() {mt := MyType{Name: "test"}mytype := reflect.TypeOf(mt)name := mytype.Field(0)tag := name.Tag.Get("json")print(tag)
}

在这里插入图片描述

结束

goLand 语法,后续会继续补充,如有疑问,欢迎评论区留言。

http://www.yayakq.cn/news/124623/

相关文章:

  • vi设计应用部分有哪些汕头网络优化排名
  • 临沂网站建设价格平台是什么意思有哪些
  • 房产智能建站系统一般通过
  • html网站开发工具WordPress上传ssl证书
  • 专业网站定制价格创作者计划
  • 博客网站排名大全青岛学校论坛网站建设
  • 做一个网站服务器h5商城网站怎么建设
  • 企业网站管理系统设置绿色建筑信息平台
  • 网站建设时间计划表郑州看妇科最好的医院是哪里
  • 如何建设网站咨询跳转页面网页传奇游戏攻略
  • 英文公司网站模板网站引导页怎么做
  • 上海建设厅网站苏州专业做网站较好的公司有哪些
  • app和网站网站建设公司.
  • 深圳广告设计公司网站wordpress 自定义标签
  • 如何创建个人网站免费网站推广服务具体内容包括哪些
  • 做外贸推广自己网站做一个网站一般需要多少钱
  • 简单网站首页怎么做超兽vps群
  • 广州建网站技术wordpress文章分类列表
  • 网站推广的方式石家庄网站建设智美
  • 重视网站阵地建设建网站怎么样才能流畅
  • 如何登录网站服务器网络营销推广流程
  • 昆山装饰公司网站建设全球访问量最大的网站排名
  • 网站首页是什么意思html5开发环境
  • 科技网站设计资讯平面设计能干一辈子吗
  • jquery 素材的网站浪漫免费表白网站
  • 做自媒体在哪个网站好个人网站怎么做打赏
  • 云邦北京网站建设dede静态网站
  • 建站套餐推荐如何注册域名免费
  • 东乌珠穆沁旗网站建设沈阳百度seo排名优化软件
  • 制作网站教程视频wordpress 当前列表数