23

Go数组反转练习

 5 years ago
source link: https://studygolang.com/articles/18768?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

package main

//要求:随机生成5个数字,求和 并将其翻转打印

//思路

//1.随机生成五个数 rand.Intn()函数

//2、当我们得到随机数后 就放到一个数组 int数组

//3、反转打印 交换次数len/2 倒数第一个和第一个交换 。。。

import (

"math/rand"

"time"

"fmt"

)

var arrnum [5]int

var arrlen =len(arrnum) //多次调用 将其设置成全局变量

func main(){

r := rand.New(rand.NewSource(time.Now().UnixNano()))

sum := 0

for i := 0 ;i<arrlen;i++ {

arrnum[i] =r.Intn(1000)

sum += arrnum[i]

}

fmt.Println(sum)

fmt.Println(arrnum)

temp := 0 //临时变量

for i :=0 ;i <arrlen /2;i++{

temp = arrnum[arrlen-1-i]

arrnum[arrlen-1-i] = arrnum[i]

arrnum[i] =temp

}
fmt.Println(arrnum)

}

YfAney6.png!web

数组使用的注意事项和细节

1) 数组是多个相同类型数据的组合,一个数组一旦声明/定义了,其长度是固定的, 不能动态变化

2) var arr []int 这时 arr 就是一个 slice 切片,切片后面专门讲解,不急哈.

3) 数组中的元素可以是任何数据类型,包括值类型和引用类型,但是不能混用。

4) 数组创建后,如果没有赋值,有默认值(零值)

数值类型数组:默认值为 0

字符串数组: 默认值为 ""

bool 数组: 默认值为 false

5) 使用数组的步骤

  1. 声明数组并开辟空间

    2 给数组各个元素赋值(默认零值)

    3 使用数组

    6) 数组的下标是从 0 开始的

    7) 数组下标必须在指定范围内使用,否则报 panic:数组越界,比如 var arr [5]int 则有效下标为 0-4

    8) Go 的数组属值类型, 在默认情况下是值传递, 因此会进行值拷贝。数组间不会相互影响

    9) 如想在其它函数中,去修改原来的数组,可以使用引用传递(指针方式)

    10) 长度是数组类型的一部分,在传递函数参数时 需要考虑数组的长度,看下面案例


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK