收藏此站 联系我们 网站
当前位置:首页» 公司新闻 » 【建站服务】怒江做网站/制作网站/搭建网站/设计网站/开发网站-网站服务一站式-域名申请

【建站服务】怒江做网站/制作网站/搭建网站/设计网站/开发网站-网站服务一站式-域名申请

作者: 风兰 . 阅读量: 4 . 发表时间:2022-09-21 05:52:06

网站建设

上往建站提供服务器空间服务商百度快照排名网站托管百度推广运营,致力于设计外包服务与源代码定制开发360推广搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


怒江做网站/制作网站/搭建网站/设计网站/开发网站-网站服务一站式


网站建设.png

func main() {
    var book1 Books;
    book1.title = "book1"
    book1.author = "zuozhe"
    book1.book_id = 1
    changeBook(book1)   //将book1传进去,本意是想修改book1里面的值
    fmt.Println(book1)}

结果为:

  {book1 zuozhe  1}   // 但是结果现实并没有任何修改。

但是有了结构体指针,就不是值传递了,而是引用传递(传递的是地址)了。就可以这么写了:

package main  
import "fmt"
  type Books struct {
    title string
    author string
    subject string
    book_id int}
  func changeBook(book *Books) {  // 这个方法传入的参数一个Books类型的指针
    book.title = "book1_change"  //直接用指针.属性的方式,修改原地址的值。}
  func main() {
    var book1 Books;
    book1.title = "book1"
    book1.author = "zuozhe"
    book1.book_id = 1
    changeBook(&book1)   //将book1这个对象的内存地址传进去,
    fmt.Println(book1)}

结果为:

{book1_change zuozhe  1}  //成功修改了book1的值


Go 语言切片(Slice)

Go 语言切片是对数组的抽象。


Go 数组的长度不可改变,在特定场景中这样的集合就不太适用,Go 中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固定的,可以追加元素,在追加时可能使切片的容量增大。


定义切片

你可以声明一个未指定大小的数组来定义切片:


var identifier []type

切片不需要说明长度。


或使用 make() 函数来创建切片:


var slice1 []type = make([]type, len)


也可以简写为


slice1 := make([]type, len)

也可以指定容量,其中 capacity 为可选参数。


make([]T, length, capacity)

这里 len 是数组的长度并且也是切片的初始长度。


切片初始化

s :=[] int {1,2,3 } 

直接初始化切片,[] 表示是切片类型,{1,2,3} 初始化值依次是 1,2,3,其 cap=len=3。


s := arr[:] 

初始化切片 s,是数组 arr 的引用。


s := arr[startIndex:endIndex] 

将 arr 中从下标 startIndex 到 endIndex-1 下的元素创建为一个新的切片。


s := arr[startIndex:] 

默认 endIndex 时将表示一直到arr的最后一个元素。


s := arr[:endIndex] 

默认 startIndex 时将表示从 arr 的第一个元素开始。


s1 := s[startIndex:endIndex] 

通过切片 s 初始化切片 s1。


s :=make([]int,len,cap) 

通过内置函数 make() 初始化切片s,[]int 标识为其元素类型为 int 的切片。


len() 和 cap() 函数

切片是可索引的,并且可以由 len() 方法获取长度。


切片提供了计算容量的方法 cap() 可以测量切片最长可以达到多少。


以下为具体实例:


实例

package main


import "fmt"


func main() {

   var numbers = make([]int,3,5)


   printSlice(numbers)

}


func printSlice(x []int){

   fmt.Printf("len=%d cap=%d slice=%v ",len(x),cap(x),x)

}

以上实例运行输出结果为:

怒江做网站/制作网站/搭建网站/设计网站/开发网站-网站服务一站式


上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站

全国服务热线
18114747181
二维码
手机端二维码
上往建站
地址:全国各地都有驻点商务 |  网站建设上往建站
在线咨询QQ:1120768800
 
QQ在线咨询
售前咨询热线
18114747181
营销顾问
营销顾问
售后服务热线
400-000-1116
售后服务
售后服务