欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何將Golang數(shù)組slice轉(zhuǎn)為逗號(hào)分隔的string字符串

 更新時(shí)間:2023年09月28日 15:34:17   作者:加拉薩假期  
這篇文章主要介紹了如何將Golang數(shù)組slice轉(zhuǎn)為逗號(hào)分隔的string字符串問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Golang數(shù)組slice轉(zhuǎn)為逗號(hào)分隔的string字符串

如將:

var a = []int{1,2,3,4}變?yōu)?quot;[1,2,3,4]"。

最硬核的辦法就是建一個(gè)slice的臨時(shí)中轉(zhuǎn):[]string 類型, 然后用strings.Join():

var src = []int{1,2,3,4}
var temp = make([]string, len(src))
for k, v := range src {
? ? temp[k] = fmt.Sprintf("%d", v)
}
var result = "[" + strings.Join(temp, ",") + "]"

然后不久后想到了一個(gè)比較簡便的方法json.Marshal():

var a = []int{1,2,3,4}
b, err := json.Marshal(a)
if err != nil {
?? ?panic(err)
}
var result = string(b)

go數(shù)組或切片轉(zhuǎn)為字符串問題

基本介紹

1)string底層是一個(gè)byte數(shù)組,因此string也可以進(jìn)行切片處理,案例演示:

package main
import (
	"fmt"
)
func main() {
	// 1. string底層是一個(gè)byte數(shù)組,因此string也可以進(jìn)行切片處理
	str := "tianwanggaidihu"
	// 使用切片獲取到atguigu
	slice := str[6:]
	fmt.Println("slice=",slice)
}

2)string和切片在內(nèi)存的形式,以"abcd"畫出內(nèi)存示意圖

3)string是不可變的,也就是說不能通過 str[0]='z'方式來修改字符串

 4)如果需要修改字符串,可以先將string => []byte   或者 []rune  => 修改 => 重寫轉(zhuǎn)成string

package main
import (
	"fmt"
)
func main() {
	// 4. 如果需要修改字符串,可以先將string => []byte 或者 []rune => 修改 => 重寫轉(zhuǎn)成string
	// 轉(zhuǎn)成byte可以處理英文和數(shù)字,但是不能處理中文
	// 原因是 []byte 是一個(gè)字節(jié),而一個(gè)漢字是 3個(gè)字節(jié),因此會(huì)出現(xiàn)亂碼
	// 解決辦法是將string  轉(zhuǎn)成 []rune 即可,因?yàn)?[]rune是按字符處理,兼容漢字
	// 1)轉(zhuǎn)成 []byte
	var str1 = "moerwubuhaha北京歡迎你"
	slice1 := []byte(str1)
	slice1[0] = 'z'
	slice1[len(slice1) - 1] = 'z'
	str1 = string(slice1)
	fmt.Println("使用[]byte處理string:",str1)
	// 2)轉(zhuǎn)成 []rune
	var str2 = "您好啊shenmeniuma北京歡迎你,天安門歡迎您"
	slice2 := []rune(str2)
	slice2[0] = '牛'
	str2 = string(slice2)
	fmt.Println("使用[]rune處理string:",str2)
}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺析go中的map數(shù)據(jù)結(jié)構(gòu)字典

    淺析go中的map數(shù)據(jù)結(jié)構(gòu)字典

    golang中的map是一種數(shù)據(jù)類型,將鍵與值綁定到一起,底層是用哈希表實(shí)現(xiàn)的,可以快速的通過鍵找到對應(yīng)的值。這篇文章主要介紹了go中的數(shù)據(jù)結(jié)構(gòu)字典-map,需要的朋友可以參考下
    2019-11-11
  • golang beyla采集trace程序原理源碼解析

    golang beyla采集trace程序原理源碼解析

    beyla支持通過ebpf,無侵入的、自動(dòng)采集應(yīng)用程序的trace信息,本文以golang的nethttp為例,講述beyla對trace的采集的實(shí)現(xiàn)原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2024-02-02
  • Go語言中使用 buffered channel 實(shí)現(xiàn)線程安全的 pool

    Go語言中使用 buffered channel 實(shí)現(xiàn)線程安全的 pool

    這篇文章主要介紹了Go語言中使用 buffered channel 實(shí)現(xiàn)線程安全的 pool,因?yàn)镚o語言自帶的sync.Pool并不是很好用,所以自己實(shí)現(xiàn)了一線程安全的 pool,需要的朋友可以參考下
    2014-10-10
  • 多階段構(gòu)建優(yōu)化Go?程序Docker鏡像

    多階段構(gòu)建優(yōu)化Go?程序Docker鏡像

    這篇文章主要為大家介紹了多階段構(gòu)建優(yōu)化Go?程序Docker鏡像,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Go語言學(xué)習(xí)教程之goroutine和通道的示例詳解

    Go語言學(xué)習(xí)教程之goroutine和通道的示例詳解

    這篇文章主要通過A?Tour?of?Go中的例子進(jìn)行學(xué)習(xí),以此了解Go語言中的goroutine和通道,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2022-09-09
  • 深入理解golang的基本類型排序與slice排序

    深入理解golang的基本類型排序與slice排序

    大家都知道排序有內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存。下面就來詳細(xì)介紹golang的基本類型排序與slice排序,有需要的朋友們可以參考借鑒。
    2016-09-09
  • Golang?Gin框架獲取請求參數(shù)的幾種常見方式

    Golang?Gin框架獲取請求參數(shù)的幾種常見方式

    在我們平常添加路由處理函數(shù)之后,就可以在路由處理函數(shù)中編寫業(yè)務(wù)處理代碼了,但在此之前我們往往需要獲取請求參數(shù),本文就詳細(xì)的講解下gin獲取請求參數(shù)常見的幾種方式,需要的朋友可以參考下
    2024-02-02
  • Golang兩行代碼實(shí)現(xiàn)發(fā)送釘釘機(jī)器人消息

    Golang兩行代碼實(shí)現(xiàn)發(fā)送釘釘機(jī)器人消息

    創(chuàng)建一個(gè)釘釘機(jī)器人必須使用加簽,本文通過Golang兩行代碼實(shí)現(xiàn)發(fā)送釘釘機(jī)器人消息,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • go引入自建包名報(bào)錯(cuò):package?XXX?is?not?in?std解決辦法

    go引入自建包名報(bào)錯(cuò):package?XXX?is?not?in?std解決辦法

    這篇文章主要給大家介紹了go引入自建包名報(bào)錯(cuò):package?XXX?is?not?in?std的解決辦法,這是在寫測試引入包名的時(shí)候遇到的錯(cuò)誤提示,文中將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • Golang unsafe包中的類型和函數(shù)詳解

    Golang unsafe包中的類型和函數(shù)詳解

    Golang中的unsafe包用于在運(yùn)行時(shí)進(jìn)行低級別的操作,這些操作通常是不安全的,因?yàn)榭梢源蚱艷olang的類型安全性和內(nèi)存安全性,使用 unsafe包的程序可能會(huì)影響可移植性和兼容性,接下來看下unsafe包中的類型和函數(shù)
    2023-08-08

最新評論