栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

golang学习笔记04

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

golang学习笔记04

数组

var hens [6]float64
命名格式: var 数组名 [大小]类型
数组名的地址就是数组的地址就是数组首元素的地址

初始化数组方式:
var numArr = [3]int{1,2,3}
var numArr01 = [...]int{1,2,3,4}
var strArr = [...]string{1:"tom",2:"ok~"}
var hens [3]string = [3]string{ , , } 
数组的遍历

for - range

for index,value := range arrge01{
    //其中的index和value是不固定的,可以自己命名
}

说明:

    第一个返回值index是数组arrge01的下标第二个value是在该index的下标的数值index与value都是局部变量假如不需要下标可以用“_”忽略
注意事项和细节说明:
    var arr []int 这时的arr表示的是一个切片数组钟的元素可以是任何数据类型包括值类型和引用类型,但是不能混用golang中数组属于值类型,在默认的情况下是发生值传递长度是数组的一部分,在传递函数参数时,余姚考虑数组的长度
    练习:
    1.打印A~Z
func main(){
   //1.打印A~Z
   var strnum [26]byte
   for i:=0;i<26;i++{
   	strnum[i] = 'A' + byte(i)
   }
   for i:=0;i<26;i++{
   	fmt.Printf("%c ",strnum[i])
   }

2.输出数组中最大的值和最大的值下标:

   var numbers = [...]int{2,34,46,234,57,21,3,46,24}
   var maxvalue int =numbers[0]
   var maxindex int = 0
   for i:=1;i maxvalue{
   		maxvalue = numbers[i]
   		maxindex = i
   	}
   }
   fmt.Printf("maxvalue = %d maxindex = %d",maxvalue,maxindex)

3.输出一个数组的和与它的平均值:

var numbers01 = [...]int{2,34,46,234,57,21,3,46,24}
	var sum int
	for _,value := range numbers01{
		sum +=value
	}
	fmt.Printf("数组和为 %d 数组平均值为 %0.1f",
	sum,float64(sum) / float64(len(numbers01)))
数组反转:

这里涉及到一个随机变量的生成:

    生成五个随机数:
    rand.Intn()将五个随机数放入到数组中将数字倒换:
package main

import (
	"fmt"
	"math/rand"
	"time"
)

func main(){
	//数组反转
	rand.Seed(time.Now().UnixNano())//种一个时间种子
	var arr01 [7]int//定义数组 
	for i:=0;i 
切片: 
基本介绍: 

切片的英文是slice切片是数组的引用,因此slice是引用类型slice和数组相识,遍历slice、访问slice元素、以及长度len(slice)都是一样
的slice的长度是动态变化的,因此切片是一个动态数组基本语法

    var 变量名 []数据类型
    ex: var arr []int
切片的基本使用
 var intArr [5]int = {11,22,33,44,55}
 //定义:
 slice := intArr[1:3]
    
切片在内存中的存在形式:
    slice是引用类型slice 从底层来说是一个结构体:
type slice struct{
    ptr *[2]int
    len int 
    cap int
}
切片的使用:

定义一个数组,再通过引用创建好的数组

运用make来创造切片:

   var 变量名 []type = make([]type,len,cap)
   //通过make方式创建的切片数组为make底层维护,外界是不可看的
   

定义一个切片,直接指定具体数组

    var strslice []string = []string{"tom","jeck","mary"}

切片遍历与数组相同

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/738015.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号