zoukankan      html  css  js  c++  java
  • go语言数据类型值--整型和浮点型

    一、整型

    1、整型的分类:

      有符号整型:    int8、int16、int32、int64

      对应的无符号整型: uint8、uint16、uint32、uint64

      uint就是我们熟知的byte类型,int16对应C语言的short型,int64对应C语言的long型,Unicode字符的rune类型和int32等价。

      

      哪些情况下使用 int 和 uint

        1.逻辑对整型范围没有特殊需求。

        2.例如,对象的长度使用内建 len() 函数返回,这个长度可以根据不同平台的字节长度进行变化。实际使用中,切片或 map 的元素数量等都可以用 int 来表示。

        3.反之,在二进制传输、读写文件的结构描述时,为了保持文件的结构不会受到不同编译目标平台字节长度的影响,不要使用 int 和 uint。

    2、整型的运算。

      1.运算符

        下面是关于Go语言中关于算数运算,逻辑运算和比较运算的二元运算符,按照先级递减的顺序排列

        *  /  %  <<  >>  &  &^

        +  -  |   ^

        == !=  <=  >  >=

        &&

        | |

        同一优先级使用左优先结合规则,也可用()提升优先级 

      2.类型转化

        不同类型之间不能进行计算,如想进行计算需先进行类型转换

    var    i int32 = 10
    var    j int64 = 20
    var    w int = i + j        //compile error: misatched types int32 and int64
    
    var    w int = int(i) + int(j)     //30     类型转换后可计算
    整型不同类型计算

      3.类型转换后发生值改变的情况

    //浮点数转整型,会省略小数点后的值
    f := 3.1415
    i := int(f)
    fmt.Println(f,i)    //  “3.1415  3”
    
    
    //高位数的整型转低位数的整型会导致值改变
    var  i int16 = 26985
    var  j int8  = int8(i)
    fmt.Println("int16",i)
    fmt.Println("int8",j)
    转换后值改变

    二、浮点数 

    1、浮点数精度

      float32:常量math.MaxFloat32表示float32能表示的最大数值,大约是3.4e38。大约可以提供6个十进制数的精度。

      float64:对应的常量math.MaxFloat64大约是1.8e308,可以提供十五个十进制数的精度。通常优先使用float64类型。

    2、浮点数的打印

      %g  打印浮点数  

      %e  带指数的打印形式(对应表格的数据)

      %f  打印对应表格的数据

    package main
    import (
        "fmt"
        "math"
    )
    func main() {
        print_float()
    }
    
    func print_float(){
        for x:=0;x<8;x++{
            fmt.Printf("x = %d   e^x = %8.3f
    ",x,math.Exp(float64((x))))
        }
    }
    
    //  %8.3f     8表示展示数据的宽度,即显示多少个数字,3表示精准度,即小数点后保留几位
    //运行结果
    //x = 0   e^x =    1.000
    //x = 1   e^x =    2.718
    //x = 2   e^x =    7.389
    //x = 3   e^x =   20.086
    //x = 4   e^x =   54.598
    //x = 5   e^x =  148.413
    //x = 6   e^x =  403.429
    //x = 7   e^x = 1096.633
    浮点数的打印
  • 相关阅读:
    混音
    Utrack声卡和机架包的调试
    音源推荐
    Silverlight & Blend动画设计系列四:倾斜动画(SkewTransform)
    Silverlight & Blend动画设计系列三:缩放动画(ScaleTransform)
    Silverlight & Blend动画设计系列二:旋转动画(RotateTransform)
    Silverlight & Blend动画设计系列一:偏移动画(TranslateTransform)
    创建WPF用户控件
    修改K3数据是简介方法
    周六周日为休息日的工厂日历修改变成工作日
  • 原文地址:https://www.cnblogs.com/ppzhang/p/10634968.html
Copyright © 2011-2022 走看看