码迷,mamicode.com
首页 > 编程语言 > 详细

Go数组反转练习

时间:2019-03-09 12:51:49      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:字符串   ima   rand   值传递   print   int   情况下   个数   51cto   

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)

}

技术图片

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

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) 长度是数组类型的一部分,在传递函数参数时 需要考虑数组的长度,看下面案例

Go数组反转练习

标签:字符串   ima   rand   值传递   print   int   情况下   个数   51cto   

原文地址:https://blog.51cto.com/dreamlinux/2360464

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!