zoukankan      html  css  js  c++  java
  • GO的整型

    整型


    uint 没有符号 也就是说没有 负号

    int 有符号 可以是负数

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

    整型

    package main
    
    import "fmt"
    
    func main(){
    v := 0o377 //8进制
    println(v)//自动转换成255
    v2 := 0b00101101 //2进制
    println(v2) //自动转换成 45
    v3 := 0x1p-2
    println(v3)//16进制 1 除以 22=1/4=0.25
    
    var a int = 0xff //自动定义10进制
    fmt.Printf("%d 
    ", a) // 10 %d 转为10进制
    fmt.Printf("%b 
    ", a) // 1010 %b转为2进制
    fmt.Printf("%o 
    ", a) //12 10进制转12进制
    fmt.Printf("%x 
    ", a) //12 10进制转16进制
    
    }
    浮点型和复数
    func main(){
    fmt.Printf("%f
    ", math.Pi) //3.141593
    fmt.Printf("%.2f
    ", math.Pi) //保留两位 3.14
    var c1 complex64
    c1 = 1 + 2i
    var c2 complex128
    c2 = 2 + 3i
    fmt.Println(c1)//(1+2i)
    fmt.Println(c2)//(2+3i)
    
    }  
    布尔值
    1.布尔型就是布尔 无法参与数值运算,也无法与其他类型进行转换
    
     
    
    func main(){
    var x bool
    fmt.Println(x)
    }
    字符串(多行,字符串的操作)
    1.字符串用双引号(“”) 2.字符表示单引(‘ )
    
    func main(){
    //多行
    x :=`sada
    sadas`
    fmt.Println(x)
    
    x2 := "123"
    x3 := "456"
    //字符串格式化
    xy:=fmt.Sprintf("您好啊 %s 大哥您的编号:%s",x2,x3) //格式化字符串
    fmt.Println(xy) //您好啊 123 大哥您的编号:456
    //字符串切割
    xy2:=strings.Split("您好啊 %s 大哥您的编号:%s","大哥") //格式化字符串
    fmt.Println(xy2,len(xy2)) //[您好啊 %s 您的编号:%s] 2
    
    //是否包含
    is_contains:=strings.Contains("您好","您") // strings.contains(string,substr)判断是否包含
    fmt.Println(is_contains) //true
    //前缀和后缀判断
    is_qianzhui1:=strings.HasPrefix("x123y","x")
    fmt.Println(is_qianzhui1) //true
    is_qianzhui2:=strings.HasPrefix("x123y","y")
    fmt.Println(is_qianzhui2) //false
    is_houzhui1:=strings.HasPrefix("x123y","x")
    fmt.Println(is_houzhui1)//true
    is_houzhui2:=strings.HasPrefix("x123y","y")
    fmt.Println(is_houzhui2)//false
    
    //子串出现的位置
    weizhi:=strings.Index("123123","2")
    fmt.Println(weizhi) //1 第一次的未知
    zuihou_weizhi:=strings.LastIndex("123123","2")
    fmt.Println(zuihou_weizhi) //4 最后一次的未知
    
     
    
    } 

    字符

    uint8类型,或者叫 byte 型,代表了ASCII码的一个字符。
    rune类型,代表一个 UTF-8字符。

    var name_str = "xzq谢志强" // 默认是btys类型
    fmt.Println(len(name_str))  //12个字节
    
    
    for _,val :=range name_str {  //循环的是rune类型 代表utf8字符
    		fmt.Printf("循环出来的字符串值 %v 
    ",val)  //现在是ASCII码的代码  %v不做处理循环什么就是什么  %c ASCII码的代码对应值
    	}    //6次

    修改字符串

    //修改字符串
    s1 := "big"
    x1 :=[]byte(s1)  //需要转换成byte
    x1[0] ='p'
    fmt.Println(string(x1))

    中文的需要转为rune

    //中文转换
    s2 := "白萝卜"
    runeS2 := []rune(s2)
    runeS2[0] = '红'
    fmt.Println(string(runeS2))
    

     

    数据类型转换

    fmt.Println(int64.11))


      

  • 相关阅读:
    1-Java继承中多态情况特性下变量,方法,静态方法的访问
    3-表约束修改
    2-表结构修改
    持续运维与监控整理
    vscode markdown思维导图插件
    [Python][学习资料]Python学习资料整理
    [高效办公]使用synergy让多台电脑共用一套鼠标键盘
    vim代码片段插件ultisnips的使用
    matplotlib提示RuntimeWarning: Glyph 20998 missing from current font
    vscode使用anaconda的python环境提示“Can't connect to HTTPS URL because the SSL module is not available”
  • 原文地址:https://www.cnblogs.com/xzqpy/p/12932583.html
Copyright © 2011-2022 走看看