码迷,mamicode.com
首页 > 其他好文 > 详细

go 字符串

时间:2020-01-09 00:39:35      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:表达式   基本数据类型   var   address   格式化   hang   UNC   表示   字节序   

什么是字符串?

定义 字符串是一个不可改变的字节序列。

 字符串的定义
package main
import "fmt"
import "strings"
import "strconv"

func stringtest()  {
var name string = "Cloud natic cloud"
fmt.Println(name)
输出

Cloud natic cloud

// 常用方法

// 1、转译 字符 \n \t 

address := "中国\n上海"
fmt.Println(address)
输出
   中国
   上海

     // 2、反引号,以原生形式输出,包括特殊字符,防止注入***

      var address2 string = `
       上海迪士尼度假乐园\n 浦东
       上海 静安寺
    上海\n人民广场
      `
      fmt.Println(address2)

        输出
              上海迪士尼度假乐园\n 浦东
      上海 静安寺
   上海\n人民广场

     // 3、字符串拼接

        var conn_string string= "hello" + " " + "go"
   fmt.Println(conn_string)
   hello go

     // 4 字符串索引

        var str_index string="hello go"
   fmt.Println(str_index)
   // 遍历
   for k,v :=range str_index{
       fmt.Printf("k is %d,value is %c\n",k,v)
   }

     输出

k is 0,value is h
k is 1,value is e
k is 2,value is l
k is 3,value is l
k is 4,value is o
k is 5,value is  
k is 6,value is g
k is 7,value is o

     // 5、修改字符串
     change_str := "say hello"
fmt.Println(change_str)
s1 :=[]rune(change_str)  // 转化为[]int32的切片,rune是int32的别名
fmt.Println(s1)
fmt.Println(s1[1]) //
输出 97 
s1[1] = ‘哈‘
change_str =string(s1) //类型强转,rune转为string
fmt.Println(change_str) 

输出

s哈y hello

// 6、字符串处理 strings 的包
//1、判断是否以某个字符串开头,返回布尔值
res0 :=strings.HasPrefix(s2,"ww")
res1 :=strings.HasPrefix(s2,"hello")
fmt.Printf("res0 is %v\n", res0) 

输出
res0 is false

fmt.Printf("res1 is %v\n", res1) 
输出
res1 is true

// 2、判断是否以某个字符串结尾,返回布尔值

res3 :=strings.HasSuffix(s2,"go")
res4 :=strings.HasSuffix(s2,"hello")
fmt.Printf("res3 is %v\n", res3) 

输出 

res3 is true

fmt.Printf("res4 is %v\n", res4)

输出 

res4 is false

fmt.Println("基本数据类型转化")

// go 基本数据类型转化  fmt.Sprintf("%参数",表达式) 将数据类型转换成
// string字符串

var n1 int = 36
var n2 float64 = 35.73
var b bool = false
var newChar byte = ‘c‘

// 依次输出

// go 格式化输出
// %q 单引号
// %d 十进制表示
// %f 有小数点
// %t 布尔值
// %c unicode 对应的字符
// %T

输出 

s1 type string s1="36"
s12 type string s12="35.730000"
s3 type string s3="false"
s4 type string s4="c"

// 使用 Stronv 导入strconv 模块

//参数解释
  // f 格式
  // 10 小数位保留10位
  // 64  表示float64

s5 :=strconv.FormatFloat(nu2,‘f‘,10,64)
fmt.Printf("s5 类型是%T s5=%q\n",s5,s5)

s6 :=strconv.FormatBool(b11)
fmt.Printf("s6 类型是%T s6=%q\n",s6,s6)

输出

 s5 类型是string s5="35.6600000000"
 s6 类型是string s6="true"

}

func main()  {
stringtest()
}

字符串的常用方法

go 字符串

标签:表达式   基本数据类型   var   address   格式化   hang   UNC   表示   字节序   

原文地址:https://blog.51cto.com/sdsca/2465372

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