zoukankan      html  css  js  c++  java
  • Go数组遍历与排序

    遍历数组

    Go遍历数组有两种方式
    1.按照数组下标进行遍历
    2.用range遍历

    package main
    
    import (
    	"fmt"
    )
    
    func main() {
    	// 声明数组
    	array := [...]string{"red", "yellow", "blue"}
    
    	// 方法一:直接用数组下标遍历
    	for i := 0; i < len(array); i++ {
    		fmt.Printf(array[i] + " ")
    	}
    
    	fmt.Println()
    
    	// 方法二:用range遍历
    	for _, value := range array {
    		fmt.Printf(value + " ")
    	}
    
    }
    
    

    输出:

    red yellow blue 
    red yellow blue
    

    数组排序

    go分别提供了sort.Float64s()  sort.Strings()  sort.Ints() 对不同类型的数组进行排序,默认是升序。
    降序需要使用sort.Reverse

    package main
    
    import (
    	"fmt"
    	"sort"
    )
    
    func main() {
    
    	arrayInt := []int{3, 1, 2, 5, 4}
    
    	arrayFloat := []float64{3.2, 1.8, 1.9, 2.2, 4.3}
    
    	arrayString := []string{"abc", "ab", "bc"}
    
    	// 升序
    	sort.Ints(arrayInt)
    	sort.Float64s(arrayFloat)
    	sort.Strings(arrayString)
    
    	fmt.Println("sort int:", arrayInt)
    	fmt.Println("sort float:", arrayFloat)
    	fmt.Println("sort ", arrayString)
    
    	// 降序
    	sort.Sort(sort.Reverse(sort.IntSlice(arrayInt)))
    	sort.Sort(sort.Reverse(sort.Float64Slice(arrayFloat)))
    	sort.Sort(sort.Reverse(sort.StringSlice(arrayString)))
    
    	fmt.Println("After reversed: ")
    
    	fmt.Println("sort int:", arrayInt)
    	fmt.Println("sort float:", arrayFloat)
    	fmt.Println("sort ", arrayString)
    
    }
    
    

    输出:

    sort int: [1 2 3 4 5]
    sort float: [1.8 1.9 2.2 3.2 4.3]
    sort  [ab abc bc]
    After reversed: 
    sort int: [5 4 3 2 1]
    sort float: [4.3 3.2 2.2 1.9 1.8]
    sort  [bc abc ab]
    
  • 相关阅读:
    linux解压 tar命令
    kernel部分数据结构列表二(超级块)
    Linux QQ 的安装
    怎么把uclinux下载到EPCS中
    CentOS 5 上安装git
    【转】Linux下使用Evolution收发Email
    几个采样代码的对比
    NIOS II 安装uclinux的硬件要求
    S3C2440 Timer初始化方法
    基于NIOS II的液晶显示设计——ucGUI移植
  • 原文地址:https://www.cnblogs.com/chenjo/p/15312253.html
Copyright © 2011-2022 走看看